Lesson 5 of 5
Choosing a toolchain
10 min
Listen to this lesson
Tool choice should follow the task, the system and the risk, not the newest announcement. This lesson matches common SAP development tasks to the toolchain that fits, using Contoso Motor Co. after its SAP S/4HANA go-live as the running example. Contoso's custom code sits in two places: converted classic code in packages such as ZCMC_SD, and new ABAP Cloud work in the software component ZCMC_CLOUD.
Task 1: understand legacy code nobody documented
Kenji's team inherited about 7,500 custom objects from the conversion. When a developer has to change one, the first job is understanding it. Explain in Joule for Developers is built for this: it explains ABAP classes, programs, CDS artifacts and simplification-item ATC findings, one object at a time, from the Project Explorer, the editor or the Joule chat. SAP-ABAP-1 sits behind this kind of explanation. Treat the explanation as a starting hypothesis: check it against the code and against the business owner's understanding.
Task 2: build a new RAP app
For new ABAP Cloud development, such as a RAP app for core return agreements in ZCMC_CLOUD, ADT for VS Code with the ADT MCP server and a coding agent is the path SAP itself teaches in its RAP130 tutorial on GitHub. The agent can use generators to create tables, CDS views, behavior definitions, service definitions and bindings, then activate and test. Joule for Developers adds the OData UI Service from Scratch wizard and RAP business logic prediction on Private Edition 2025 or higher.
Task 3: migrate custom code
For ECC-to-S/4HANA custom code work, SAP's first custom code migration agent went live in Q2 2026. It requires Joule for Developers on AI Units plus a coding agent, and it runs in Eclipse until VS Code supports all needed object types. Contoso has already converted, so for Contoso the near-term value is the Custom Code Migration AI Assistant's explanations and code proposals for remaining ATC findings. Course sap-abp-204 covers the ATC side.
Task 4: side-by-side apps and integration code
For CAP services and UI5 or Fiori front ends on SAP BTP, use SAP's own CAP, UI5 and Fiori MCP servers with the agent of your choice. They know framework conventions and documentation, and SAP's API Policy FAQ treats SAP-published developer MCP servers as endorsed. For an agent that would call SAP business APIs at runtime, that's a different question: SAP's endorsed path for agentic access to business APIs is the MCP Gateway in SAP Integration Suite, together with SAP-provided MCP servers through Joule Studio and the A2A protocol.
- Name the taskExplain, build, migrate, test, or integrate
- Name the system and releaseFor example, CMD on SAP S/4HANA 2025 Private Edition
- Pick the SAP-supported tool firstJoule Explain, ADT MCP server, CAP or UI5 MCP server
- Add an agent only if the task has many stepsCopilot, Amazon Q or Claude Code through MCP
- Set the controlsDev system only, package restriction, ATC, ABAP Unit, review
Where third-party agents fit
Third-party agents are welcome on the ABAP side through the MCP server; SAP built it for "the coding agent of your choice". GitHub Copilot is SAP's primary tested agent in VS Code. Claude Code is a terminal-first agent whose project rules, permissions and hooks make it attractive for teams that want strong controls; SAP's FAQ notes that the MCP server currently runs bundled in the IDE, so Claude Code connects to it while VS Code or Eclipse is running. Third-party agents change fast, so pin what you pilot: in October 2026 Claude Code's default model on Anthropic's plans was Opus 5.5, and from version 2.1.283 interactive sessions start in auto mode, where a classifier rather than you approves actions, unless your settings choose another mode. Record the agent version, model and permission mode in the pilot plan, as you would an ADT client version. Course sap-aid-203 covers that setup, and sap-aiq-201 covers Claude Code for SAP testing.
| Contoso task | Toolchain | Control that matters most |
|---|---|---|
| Explain report in ZCMC_SD before a fix | Joule Explain in ADT for Eclipse | Developer checks the explanation against the code |
| New validation on the core agreement RAP BO | ADT for VS Code, ADT MCP server, coding agent | ATC variant ZCMC_CLOUD_DEV and ABAP Unit before release |
| Clear remaining ATC readiness findings | Custom Code Migration AI Assistant in Eclipse | Human review of every proposed code change |
| CAP service for a dealer portal on BTP | CAP and UI5 MCP servers with an agent | Pull request review in the BTP pipeline |
| Agent that reads open sales orders for a planner | MCP Gateway in Integration Suite (not ADT) | API Policy compliance and audit logging |
One company, five tasks, five different toolchains.
A first 30 days at Contoso
- Week 1: Kenji, Sam (Basis) and Nadia (security) agree the pilot scope: six developers, CMD client 100 only, software component ZCMC_CLOUD only.
- Week 1: the administrator provisions Joule for Developers in SAP for Me and assigns the six users; Sam confirms RFC logon from ADT for VS Code.
- Week 2: developers use Explain and ABAP Unit generation on existing classes; no agent writes yet.
- Week 3: the ADT MCP server is enabled with access restricted to CMD and one package; an agent builds one small, reviewed change.
- Week 4: Kenji reviews AI Unit consumption in SAP for Me, ATC and ABAP Unit results, and review findings, then decides whether to widen the pilot.
What would you do?
Priya, Contoso's test lead, hears that a coding agent will build the new core agreement validation. She asks what evidence she'll get before the change reaches CMQ. What's the best answer from Kenji?
- Explain legacy code with Joule Explain, then verify the explanation.
- Build new RAP apps with ADT for VS Code, the ADT MCP server and an agent.
- Use the custom code migration agent (Eclipse) for ECC-to-S/4HANA code work.
- Use SAP's CAP, UI5 and Fiori MCP servers for side-by-side apps; use the MCP Gateway for agents calling business APIs.
- Every AI-assisted ABAP change passes ATC, ABAP Unit and human review before release.
Check your understanding · not graded
Lesson check
1. Which tool does SAP name as its endorsed path for external agents calling SAP business APIs?
2. In which IDE must the first custom code migration agent be used today?
3. What should a reviewer confirm about AI-generated ABAP Unit tests?
4. Contoso wants a RAP validation built with an agent. Which ATC variant from Contoso's setup applies to ZCMC_CLOUD?