Lesson 2 of 5
The ADT MCP server
10 min
Listen to this lesson
The ADT MCP server is what turns ADT from an IDE into a platform for coding agents. It runs in the shared language server, so it offers the same tools in VS Code and Eclipse. SAP's ABAP AI blog states that it works in the cloud and on-premise, for release 7.31 and higher. SAP News (18 August 2026) calls it generally available for both IDEs since Q2 2026.
How it runs
- Local HTTP server: once enabled, it listens at
http://localhost:<port>/mcpon the developer's machine. The default port is 2236 in VS Code and 2234 in Eclipse. - Bearer token: enabling the server generates a token automatically and stores it in a preference (
Adt > MCP Server: Tokenin VS Code). Any MCP host must send it in anAuthorization: Bearerheader. - Your logon, your authorizations: the server uses the IDE's connection to the ABAP system, so an agent can do only what the logged-on developer is authorized to do.
- Runs with the IDE: SAP's FAQ says the server is bundled in the extension and runs only while VS Code (or Eclipse) runs. A standalone shipment is under discussion, not available.
Why "your logon" matters
Because the server acts with the developer's own connection, the developer's authorizations are the agent's authorizations. That cuts both ways. It means you don't create a special, powerful technical user for the agent, which is good. It also means a developer with broad rights (for example, change authorization for every package, or debug-with-change in a quality system) hands those rights to the agent. Before a pilot, Nadia reviewed the pilot developers' roles in CMD and removed authorizations they didn't need for the pilot packages. Least privilege for the person is least privilege for the agent.
Enable it in VS Code
- Open Settings (Command Palette: Preferences: Open Settings (UI)) and search for ADT MCP Server.
- Set the port (1024 to 65535; default 2236).
- Decide on the edit file tool. SAP disables it by default "to prevent unintentional changes to ABAP objects". Leave it off until you need agent edits.
- Keep access restrictions enabled (the default) and list the ABAP projects (destinations) and the packages the server may change.
- Select Enable ADT MCP server. The server starts at
http://localhost:2236/mcp.
In ADT for Eclipse the path is Window > Preferences > ABAP Development > MCP Server: select Enable ADT MCP Server, set the port (default 2234) and apply. The token appears on the same page.
Access restrictions
Access restrictions are the most important setting on the page. With them enabled, the server allows read and write access only to the listed projects, and allows create and change only for objects in the listed packages. One detail matters for security reviews: SAP states that reading from all packages is allowed irrespective of the restrictions. And if you switch off the central restriction setting, the server restricts nothing, even if projects and packages are listed.
| Setting | Default | Recommended for a first pilot |
|---|---|---|
| ADT MCP server | Off | On, only on pilot developers' machines |
| Access restrictions | On | On; never switch off |
| Projects | Opt-in | Development system only (for Contoso, CMD client 100) |
| Packages | Opt-in | One pilot package, or $TMP for experiments |
| Edit file tool | Off | Off for discovery; on only for the change exercise |
| Port | 2236 (VS Code) / 2234 (Eclipse) | Default, unless it clashes with another local service |
The tools
SAP's tool reference for VS Code (October 2026) lists these toolsets. SAP renamed the tools in version 1.2 and warns that skills or agents referring to old names must be updated; Eclipse documentation may still show older names.
| Toolset | Tools | Uses Joule tokens |
|---|---|---|
| Destinations | abap_lists_destinations | No |
| Search and read | abap_repository_search_object, abap_resolve_file_uris, abap_read_file | No |
| Edit | abap_edit_file (off by default) | No |
| Create | abap_repository_list_creatable_types, abap_object_get_creatable_type_detail, abap_object_validate_creation, abap_object_create | No |
| Generate | abap_objects_generator_list, abap_objects_generator_get_schema, abap_objects_generator_run | No |
| Activate and check | abap_activate_objects, abap_object_check | No |
| ABAP Unit | abap_run_unit_tests | No |
| ATC | abap_run_atc, abap_atc_get_result, abap_atc_execute_deterministic_quickfixes, abap_atc_exemption_request, abap_atc_exemption_approvers | No |
| ATC with AI | abap_atc_apply_ai_fix, abap_atc_get_ai_fix_result | Yes |
| Transports | abap_transport_create_request, abap_transport_get_request, abap_transport_get_unified_diff | No |
| Services | abap_business_service_list, abap_business_service_get_info | No |
| Explain and docs | abap_explain_object, abap_docs_dcp | Yes |
| Troubleshooting | abap_feed_query, abap_feed_get_schema | No |
| Custom actions | abap_object_list_actions, abap_object_run_action | No |
From SAP's Model Context Protocol Tools page for ADT for VS Code. SAP adds that support for the MCP tools requires a valid Joule for Developers, ABAP AI capabilities license.
What "supported" means here
Two separate conditions decide whether SAP will help you with a problem. The extension itself is supported through SAP support cases on component BC-DWB-AIV; the Marketplace Q&A section isn't a support channel, and SAP limits support for installations in VS Code forks to issues that also reproduce in Microsoft's VS Code. The MCP tools are supported only if the customer holds a valid Joule for Developers, ABAP AI capabilities license, and SAP asks you to reproduce an MCP problem in ADT for VS Code before opening a ticket. For a pilot this matters: if the license isn't in place, you can still try the tools, but you are on your own when something goes wrong.
What would you do?
Nadia reviews a pilot developer's ADT for VS Code settings. The MCP server is enabled, the project list contains only CMD, and the package list contains the core agreement package. But the central access restriction setting is switched off, because "the lists are filled in anyway". What should she conclude?
- The ADT MCP server runs locally at localhost (port 2236 in VS Code, 2234 in Eclipse) with a bearer token.
- It uses the developer's logon and runs only while the IDE runs; a standalone version is only under discussion.
- Access restrictions limit projects and writable packages; reads from all packages stay allowed.
- The edit file tool is off by default; leave it off until you need it.
- Tool names changed in 1.2; a few tools use Joule tokens, and the feed tool carries a privacy warning.
Check your understanding · not graded
Lesson check
1. What is the default port of the ADT MCP server in ADT for VS Code?
2. With access restrictions enabled, which access is still allowed for all packages?
3. How does an MCP host authenticate to the ADT MCP server?
4. Why did SAP disable the edit file tool by default?