CapabilityAI & AgentsStandard ABAP, read from its artifacts

Agent access to ABAP code

There is no filesystem to read: the source lives in a system reachable by default through ADT resources, so this is a landscape and licensing question before it is a tooling one. Many MCP servers build towards ADT resources, but differ in where they run, how they connect and how they authenticate. SAP ships its own servers here, meant to be the default way in. The community ones are further along in features.

Showing artifacts, examples and content with confirmed Standard ABAP applicability. View All ABAP

Overview

SAP SHIPS

No SAP artifact is confirmed here for Standard ABAP.

A Standard ABAP coverage assessment has not been written. View all flavors

THE COMMUNITY ADDS
arc-1-bopf-enh

Reaches what ADT does not on an on-premise system: an agent connected to arc-1 reads, creates, changes, checks and deletes classic BOPF enhancements of SAP standard business objects and their entities, without BOBX.

erpl-adt

Gives the same ADT operations to a person at a shell and to an agent over MCP from one binary, and extends them to BW/4HANA modelling objects that ABAP-only servers do not reach.

Sourceerpl-adt — READMEchecked
ZARC1_EXTENSION_FORMS

Reaches the classic form objects ADT does not list: an agent connected to arc-1 reads and writes SAPscript window texts and Smart Styles, and checks any TADIR object for its existence, package and author.

aibap.mcp

Executes the ABAP it just wrote through ADT's classrun and returns the console output, so an agent can check a change rather than assert it.

Sourceaibap.mcp — READMEchecked
mcp-abap-adt

Answers what is in the system with tools shaped for reading, against a sibling server that exposes the lower-level ADT API for editing it.

Sourcemcp-abap-adt — READMEchecked
ABAPilot

Supplies source and dictionary context from ECC and on-premise S/4HANA through a vendor backend installed in the system, rather than by speaking ADT from outside.

SourceABAPilot — READMEchecked
vibing-steampunk

Adds the parts of a system a developer needs during a post-mortem and ADT does not surface — cluster tables decoded, the application log, spool and job output, variants, test data and the IMG — on top of the usual read, write, test and deploy loop.

Sourcevibing-steampunk — READMEchecked
claude-sap-kit

Adds five tools to what an agent can reach on a classic ABAP system beyond ADT: submitting a report and reading its ALV as JSON, running a NAST message's print program and fetching the spool PDF, and reading, writing and replacing SmartForms as XML.

Skybuffer AI MCP server

Gives a coding assistant object metadata, source code and ST22 short dumps from the system through the same MCP tools, under the developer's own authorizations.

Klystron

Exposes the system's own objects, checks and transports to an MCP client as typed tools from inside the application server, so an agent reads, writes and activates ABAP under the signed-in user's authorizations and gets each object back as a file in SAP's format.

ABAP AI Code

Runs an LLM's tool calls as ABAP inside the system, reading classes, single methods, programs and pattern matches from the live repository.

Sourceysichov/ABAP-AI-Code — READMEchecked

A Standard ABAP coverage assessment has not been written. View all flavors

Policy1

PolicySAP API Policy 4.2026a§ 1.1, 1.2, 2.2.2AlwaysAn MCP server calls ADT or another SAP API of a running system for an agent.
  • § 1.1 Published APIs. Published APIs are made available for the documented purposes identified by SAP, including integration, extensions and data exchange.
  • § 1.2 Non-Published APIs. Customer and third-party applications must not access non-published APIs except where documentation permits it or SAP otherwise authorizes it.
  • § 2.2.2 AI call sequences and data extraction. Outside SAP-endorsed architectures, data services or expressly identified pathways, the policy prohibits specified agentic API use and systematic or large-scale extraction.

An agent that plans and executes ADT calls is the case section 2.2.2 names. Check that the endpoints are published for the intended use, and that the design runs within a pathway SAP identifies for it.

SAP API Policy 4.2026a →
SourceSAP API Policy v.4.2026achecked

Artifacts15

15 of 15 artifacts
ArtifactSignals
Apps1
ABAP AI CodeAgentic coding assistant in ABAP that runs as an SAP GUI report
Signals
none
MCP servers13
@mcp-abap-adt/coreABAP ADT MCP server published as an npm scope and plugin
Signals
Functional boundary
ABAPilotMCP connector for ECC and on-premise S/4HANA with a licensed SAP side
Signals
Commercial+1
aibap.mcpGo MCP server that writes, activates and runs ABAP classes via ADT
Signals
Not reachable+2
arc-1MCP server over the ADT REST API for ABAP objects
Signals
Use terms
arc-1-bopf-enharc-1 extension for reading and maintaining BOPF enhancements
Signals
Functional boundary
bw-modeling-mcpMCP server for BW/4HANA modelling objects
Signals
Functional boundary
erpl-adtC++ binary speaking the ADT REST API as a CLI and MCP server
Signals
Functional boundary
fr0ster/mcp-abap-adtABAP MCP server with full CRUD on on-premise and ABAP Cloud
Signals
Functional boundary
KlystronMCP server in ABAP inside the application server, with agent skills
Signals
Commercial
mcp-abap-adtRead-oriented MCP server fetching ABAP programs, classes, tables
Signals
Functional boundary
Skybuffer AI MCP serverABAP add-on serving business data and transactions as MCP tools
Signals
Commercial
vibing-steampunkADT-to-MCP bridge in Go reaching past what ADT exposes
Signals
Functional boundary
ZARC1_EXTENSION_FORMSarc-1 extension for SAPscript and Smart Forms objects
Signals
Functional boundary
Skills1
claude-sap-kitClaude Code plugin adding Custom_* tools to arc-1
Signals
Functional boundary

Tasks1Beta

Covers, under conditionsNot assessed
Let an agent change ABAP in an on-premise system3 under conditions

An agent reads and changes ABAP in a system the customer runs themselves, on the classic development model, and the change is activated there.

Ends at the change activated in the system. The network path to it, the Cloud Connector or the RFC route, and the authorisations the agent's user carries are landscape work this task assumes is already done.

Covers, under conditionsarc-1Reaches an on-premise system through the Cloud Connector and forwards the caller's identity end to end with X.509 certificates, so the system sees a real SAP user and its authorisation checks still apply. On that connection it reads, writes and activates source and DDIC metadata and runs syntax check, ABAP Unit and ATC.

Conditions: A Cloud Connector between the server and the system, or an X.509 trust for per-user destinations. Writes are off by default: the shipped posture is read-only, with no free SQL, no table preview, no transport writes and no git writes until each is turned on with an explicit flag.

Remaining work: Deciding which packages the agent may write to, and which of the off-by-default reads to turn on, before any of this happens.

Open artifact →

Covers, under conditionsfr0ster/mcp-abap-adtNames on-premise ECC and SAP S/4HANA in its own supported list, and goes below every other entry on this door: legacy systems on a BASIS release under 7.50, where vibing-steampunk's floor sits. It states full create, read, update and delete on ABAP artifacts rather than a read-only posture, and documents two authentication routes it marks as on-premise only, client certificates over mTLS and Kerberos through SPNEGO.

Conditions: Client certificate and Kerberos authentication are documented as on-premise HTTP only, so the route that fits a classic system is not the one that fits a BTP one. A legacy system under BASIS 7.50 is served by a separate tool set rather than the full one, which the README lists on its own page.

Remaining work: Reading which tools the legacy set actually holds for the release in front of you, since the entry's reach below 7.50 is stated as a separate surface rather than the same one.

Open artifact →

Covers, under conditionsvibing-steampunkStates any system with ADT switched on from 7.50 upwards, which reaches an ERP system no ABAP Cloud client answers for, and carries a second route for systems where the HTTP path is not available: classic RFC through the gateway port, with SADT_REST_RFC_ENDPOINT taking a whole HTTP request so an ADT resource is still reachable. What a given system actually offers varies by release, and vsp compat reports that per system rather than assuming it.

Conditions: ADT is enabled on the system. RAP needs SAP S/4HANA and AMDP needs SAP HANA, so part of the surface is absent on an ERP system. The RFC route needs the gateway port open instead of ICF, which is a different network decision rather than a fallback that needs no one's approval.

Remaining work: Reading vsp compat for the system in front of you before planning what the agent is allowed to attempt on it, and deciding whether a production system is one the agent may write to at all.

Open artifact →

Content4

Group by
Piece, what it offers
Using Claude for SAP ABAP development on RFC-only / SAProuter systems (even ECC R/3)
SAP Community, enrico_andreoli, Blog
Claude Code via MCP: Poor man's Joule, or a practical tool?
SAP Community, k1000, Blog
Building an Enterprise-Ready SAP AI Agent with Open Source
blog.zeis.de — Marian Zeis, Marian Zeis, BlogThe reasoningRunnable code
Patterns for using LLMs in ABAP development
Heliconia Labs, Lars Hvam, DocThe reasoningA reference
Using Claude for SAP ABAP development on RFC-only / SAProuter systems (even ECC R/3)
SAP Community, enrico_andreoli, Blog
Claude Code via MCP: Poor man's Joule, or a practical tool?
SAP Community, k1000, Blog
Building an Enterprise-Ready SAP AI Agent with Open Source
blog.zeis.de — Marian Zeis, Marian Zeis, BlogThe reasoningRunnable code

Details

Coverage
statecommunity only, ABAP, Standard ABAP, derived
also inCAP, UI5, BTP/BAIP
Comparison properties16

These are the questions used to compare what the artifacts do. Values come from their documentation and may apply to a particular ecosystem or runtime. Each recorded value in the comparison opens its statement and sources.

sourcesearchwhere-usedDDICCDStable datawritecreateactivatetransportsgitsyntaxATCABAP Unitrun codedumps
For your agent
Ref
capability:agent-code-access
JSON
/capabilities/agent-code-access.json
MCP
Connecting an agent