Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
MCP server for SAP ABAP ADT over Streamable HTTP: credentials from x-sap-* headers per request
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
SAP_SYSTEM_TYPE, MCP_HTTP_HOST, MCP_HTTP_PORT, SAP_MASTER_SYSTEM, SAP_RESPONSIBLEDu brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"abap-adt-http": {
"command": "npx",
"args": [
"-y",
"@mcp-abap-adt/http"
],
"env": {
"SAP_SYSTEM_TYPE": "your-value",
"MCP_HTTP_HOST": "your-value",
"MCP_HTTP_PORT": "your-value",
"SAP_MASTER_SYSTEM": "your-value",
"SAP_RESPONSIBLE": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add abap-adt-http --env SAP_SYSTEM_TYPE=your-value --env MCP_HTTP_HOST=your-value --env MCP_HTTP_PORT=your-value --env SAP_MASTER_SYSTEM=your-value --env SAP_RESPONSIBLE=your-value -- npx -y @mcp-abap-adt/httpTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"abap-adt-http": {
"command": "npx",
"args": [
"-y",
"@mcp-abap-adt/http"
],
"env": {
"SAP_SYSTEM_TYPE": "your-value",
"MCP_HTTP_HOST": "your-value",
"MCP_HTTP_PORT": "your-value",
"SAP_MASTER_SYSTEM": "your-value",
"SAP_RESPONSIBLE": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"abap-adt-http": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@mcp-abap-adt/http"
],
"env": {
"SAP_SYSTEM_TYPE": "your-value",
"MCP_HTTP_HOST": "your-value",
"MCP_HTTP_PORT": "your-value",
"SAP_MASTER_SYSTEM": "your-value",
"SAP_RESPONSIBLE": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
MCP_HTTP_HOST envMCP_HTTP_PORT envSAP_MASTER_SYSTEM envSAP_RESPONSIBLE envDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 7. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto fr0ster bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Das musst du eintragen: SAP_SYSTEM_TYPE
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (20.0.0) kam vor 16 Tagen in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, Date Math
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Exact date/time math for agents: business days, holidays, time zones, cron, RRULE, SLA. x402 paid.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
mcp-abap-adt is an MCP server for ABAP ADT in SAP ECC/S/4HANA (on-premise) and SAP BTP ABAP Cloud systems. It gives agents controlled access to real ABAP repositories through ADT, so analysis and changes are grounded in system data instead of assumptions. It is built for AI-assisted pair programming (AIPNV: AI Pairing, Not Vibing), not autopilot vibe coding.
Primary workflows:
Why teams use it:
parked/legacy-support branch until it can be tried against a live legacy systemx-sap-jwt-token header of mcp-abap-adt-http / mcp-abap-adt-sse@mcp-abap-adt/core) or the compact one (@mcp-abap-adt/compact), each connecting to the system over HTTP, RFC or SNC — see Installation variantsAuthorization & Destinations (Important): A *destination* is the filename of a service key stored locally. You place service keys in the service-keys directory, and use --mcp= to select which one to use. This is the primary auth model for on‑prem and BTP systems. See Authentication & Destinations.
You can configure MCP clients either manually (JSON/TOML) or via the configurator CLI (@mcp-abap-adt/configurator, repo: mcp-abap-adt-conf).
Pick a variant first — full or compact server, and HTTP, RFC or SNC to the system. HTTP needs nothing but Node.js 22 or 24; RFC and SNC need the SAP NW RFC library when the server runs — SAP GUI's 64-bit sapnwrfc.dll on Windows, else the SAP NW RFC SDK; the RFC module comes prebuilt for Linux x64 (glibc), Windows x64 and macOS ARM64, and npm install compiles nothing. Installation variants has the table and the commands; RFC Setup the steps. To run without Node.js on a machine, build your own portable executable — Node.js and your SAP NW RFC SDK inside.
Install the server and configure your client using the configurator:
npm install -g @mcp-abap-adt/core
npm install -g @mcp-abap-adt/configurator
mcp-conf --client cline --name abap --mcp TRIAL
mcp-conf --client copilot --name abap --transport http --url http://localhost:3000/mcp/stream/http
Full configurator usage (separate repo): CLIENT_INSTALLERS.md.
Destination: a local service key filename. You store service keys in the standard service-keys directory, and pass the filename (without extension) via --mcp= to select which system to use.
See docs/user-guide/TERMINOLOGY.md for the full list.
Destination-based auth is the default. Drop service keys into the standard platform folder and use the filename as your destination:
mcp-abap-adt --mcp=TRIAL --system-type=cloud
Standard service key paths:
~/.config/mcp-abap-adt/service-keys/ .json%USERPROFILE%\\Documents\\mcp-abap-adt\\service-keys\\ .jsonmcp-abap-adt (stdio) supports exactly three authentications, each a destination stated in a service key, a .env, or both; a JWT you hold is sent in headers to the HTTP or SSE server:
| Authentication | .env keys |
|---|---|
| Basic (HTTP or RFC) | SAP_AUTH_TYPE=basic, SAP_USERNAME, SAP_PASSWORD |
| SNC (RFC only, passwordless) | SAP_AUTH_TYPE=snc, SAP_SNC_PARTNERNAME, optional SAP_SNC_QOP, SAP_SNC_LIB, SAP_SNC_MYNAME — no user, no password |
| JWT, browser login | SAP_AUTH_TYPE=jwt, SAP_GRANT_TYPE=authorization_code, a service key (ABAP or XSUAA) or SAP_UAA_* |
| JWT you hold | the x-sap-jwt-token header of mcp-abap-adt-http / mcp-abap-adt-sse (stdio serves none) |
A jwt .env must state SAP_GRANT_TYPE. The mcp-auth command that writes such a .env comes from @mcp-abap-adt/auth-broker-cli. The browser login listens on port 61001 unless --browser-auth-port says otherwise.
A created object always carries its responsible person and, where known, its master system. The servers name them once per destination — its credentials and its ABAP system — when its connection is created, by the rules of @mcp-abap-adt/responsible-rules: the system's systeminformation answer (its user, its system id) wins, on-premise and on ABAP Cloud alike; a tool argument that names the value (a transport's owner, say) still states it for that call. When the system gives no information, ABAP Cloud is an error (cloud_without_systeminformation for a 404, else system_lookup_failed); on-premise the responsible is SAP_RESPONSIBLE / x-sap-responsible if stated, else the login (SAP_USERNAME, x-sap-login), and the master system SAP_MASTER_SYSTEM / x-sap-master-system when stated; with no user at all the call is refused system_user_unknown, and a stdio start ends with exit 1. A 401 is answered as it came. The library applies no rules unless an embedder passes them. See Authentication & Destinations. Coming from 22.x? See the 23.0 migration note — CreateProgram no longer offers include (create an include with CreateInclude); an embedder registering the ./handlers groups on its own McpServer states systemType (SAP_SYSTEM_TYPE is not read there), and HandlerExporter serves no background run and no debugger. Coming from 21.x? See the 22.0 migration note — the tools, their enums and the object types each argument accepts are the declared system type's (onprem or cloud), inspection needs --system-type too, function / func are the function module, main types stand for their one code, RunATC on cloud offers no program, and ValidateServiceBinding requires package_name. Coming from 19.x? See the 20.0 migration note — RFC on connection 19 and sap-rfc-lite 0.3.2: nothing compiled on install, a prebuilt binding for Linux x64, Windows x64 and macOS ARM64 only; over Streamable HTTP state_handle is an argument of every tool, and a long session keeps one SAP session across calls. Coming from 18.x? See the 19.0 migration note — the server split into a package per transport and tool set, the system type required, the low set gone, the auth chain on 6.0. Coming from 17.x? See the 18.0 migration note — the debugger's embedder surface moved to adt-clients 29, and a debugger start needs at least one breakpoint. From 16.x, the 17.0 note first.
For full details (paths, .env, direct headers), see Authentication & Destinations.
The project ships a library and the servers — and a compact variant of each server — because the two usage patterns want different licences. Embedding the tools in a network service should not drag in the obligations of a server that service never runs.
| Package | Licence | What it is |
|---|---|---|
@mcp-abap-adt/lib | Apache-2.0 | The ADT tool handlers and the embeddable MCP server. No transport: the host supplies one. |
@mcp-abap-adt/core | AGPL-3.0-only | The standalone stdio server, mcp-abap-adt: one destination through the auth broker. Depends on the library. |
@mcp-abap-adt/http | AGPL-3.0-only | The Streamable HTTP server, mcp-abap-adt-http: credentials from each request's x-sap-* headers. |
@mcp-abap-adt/sse | AGPL-3.0-only | The HTTP+SSE server, mcp-abap-adt-sse: credentials from the x-sap-* headers of each SSE connection's GET. |
@mcp-abap-adt/compact | AGPL-3.0-only | The compact server over stdio, mcp-abap-adt-compact: one tool per operation, the object type in the arguments. core's launcher and configuration (from server-runtime) with the compact tool set. |
@mcp-abap-adt/compact-http | AGPL-3.0-only | The compact server over Streamable HTTP, mcp-abap-adt-compact-http: http's launcher and configuration (from server-runtime) with the compact tool set. |
@mcp-abap-adt/compact-sse | AGPL-3.0-only | The compact server over HTTP+SSE, mcp-abap-adt-compact-sse: sse's launcher and configuration (from server-runtime) with the compact tool set. |
@mcp-abap-adt/server-runtime | AGPL-3.0-only | The launch code of every server: the stdio, Streamable HTTP and SSE launchers and servers, and the destination layer. No command of its own: every server package depends on it, so it is installed with each server; you never install it yourself. |
@mcp-abap-adt/background-runs-memory | Apache-2.0 | The in-memory store of background runs (IBackgroundRuns of the library): the servers' store, for an embedder that keeps runs in its process. Every server package depends on it. |
@mcp-abap-adt/responsible-rules | Apache-2.0 | The rules that name a call's responsible, user and system from systeminformation (SystemContextRules of the library), and the system type the binaries require. Every server package passes them; the library applies none, so an embedder opts in. |
| @mcp-abap-adt/core-ro, http-ro, sse-ro | AGPL-3.0-only | The read-only se
Nur der Anfang wird gezeigt; den Rest findest du im Repo