mcp-abap-adt
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SAP_URL | Yes | The URL of the SAP system (e.g., https://my-sap-system.com:8000) | |
| SAP_CLIENT | Yes | The SAP client number (e.g., 100) | |
| SAP_LANGUAGE | No | The SAP language (optional) | |
| SAP_PASSWORD | Yes | The SAP password | |
| SAP_USERNAME | Yes | The SAP username | |
| TLS_REJECT_UNAUTHORIZED | No | Set to 'false' to allow self-signed certificates (optional) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| GetProgramA | Retrieve ABAP program source code. For large programs, use startLine/maxLines to page through the source instead of retrieving it all at once. |
| GetClassA | Retrieve ABAP class source code. For large classes, use startLine/maxLines to page through the source instead of retrieving it all at once. |
| GetFunctionGroupA | Retrieve ABAP Function Group source code. For large function groups, use startLine/maxLines to page through the source instead of retrieving it all at once. |
| GetFunctionA | Retrieve ABAP Function Module source code. For large function modules, use startLine/maxLines to page through the source instead of retrieving it all at once. |
| GetStructureA | Retrieve ABAP Structure. For large structures, use startLine/maxLines to page through the result instead of retrieving it all at once. |
| GetTableA | Retrieve ABAP table structure. For large tables, use startLine/maxLines to page through the result instead of retrieving it all at once. |
| GetTableContentsA | Retrieve contents of an ABAP table. max_rows limits SAP rows; startLine/maxLines page the returned textual XML when its serialized size is still large. |
| GetPackageA | Retrieve ABAP package details. Use startLine/maxLines to page large serialized package listings. |
| GetTypeInfoA | Retrieve ABAP type information. For large results, use startLine/maxLines to page through it instead of retrieving it all at once. |
| GetIncludeA | Retrieve ABAP Include Source Code. For large includes, use startLine/maxLines to page through the source instead of retrieving it all at once. |
| SearchObjectB | Search for ABAP objects using quick search. maxResults limits matches; startLine/maxLines page the returned textual XML when its serialized size is still large. |
| GetTransactionA | Retrieve ABAP transaction details. For large results, use startLine/maxLines to page through it instead of retrieving it all at once. |
| GetCDSViewA | Retrieve CDS view (DDL source) source code. For large views, use startLine/maxLines to page through the source instead of retrieving it all at once. |
| GetInterfaceA | Retrieve ABAP interface source code. For large interfaces, use startLine/maxLines to page through the source instead of retrieving it all at once. |
| GetBehaviorDefinitionA | Retrieve RAP Behavior Definition (BDEF) source code (requires ~NW 7.54 / S/4HANA). For large definitions, use startLine/maxLines to page through the source instead of retrieving it all at once. |
| GetServiceDefinitionA | Retrieve RAP Service Definition (SRVD) source code (requires ~NW 7.54 / S/4HANA). For large definitions, use startLine/maxLines to page through the source instead of retrieving it all at once. |
| RunAtcA | Run ABAP Test Cockpit (ATC) checks on an ABAP object and return findings with priority, check name, message, and source location. |
| CheckReleaseStateA | Check the SAP release classification (Level A/B/C/D) of a CDS view. Returns the API state, official successor, base view, and extensibility information. Use this before remediating to understand what needs to change. |
| FindCleanCoreViolationsA | Scan Z/Y custom objects system-wide for usages of unreleased (Level C) or deprecated (Level D) SAP CDS views. Returns a prioritised list of violations (P1-P4) with successor recommendations. Use max_objects and start_index to paginate large systems. |
| RemediateObjectA | Replace a C/D CDS view reference in a Z object with the correct successor. Supports field name mapping and produces a before/after diff. Always runs as dry_run: true by default — set dry_run: false to write and activate in SAP. |
| CreateCDSExtensionA | Create a CDS View Extension (extend view entity) to add missing fields to an existing SAP standard view. Use when a successor view is missing fields needed by the Z object. Always dry_run: true by default. |
| CreateCDSObjectA | Create a new Z wrapper CDS view (Level A — clean core safe). Used for P4 cases where no SAP successor exists. Always dry_run: true by default — review the scaffold before creating. |
| ReleaseAsC1A | Formally register a Z/Y CDS wrapper view as C1-released in SAP's ARS_RUNTIME_API_STATE table. Used after CreateCDSObject in P4 flow so SAP's own ATC tools recognise the wrapper as released. Always dry_run: true by default. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 23 tools
Most tools are clearly separated by artifact type (class, program, interface, table, etc.), and the remediation/creation tools are distinct from retrieval. However, GetStructure, GetTable, and GetTypeInfo have overlapping territory around ABAP data types, so an agent could occasionally select the wrong getter.
Tool names follow a consistent PascalCase verb-noun pattern, with Get* for retrieval and verbs like Run, Check, Find, Remediate, Create, and Release for actions. Even multi-word CDS tools follow the same convention.
23 tools is on the heavy side, largely because there are 15 Get* retrieval variants for different ABAP artifact types. The count is not unreasonable for the domain, but it exceeds the 3-15 well-scoped range.
The set covers a coherent clean-core workflow: search, retrieve source, run ATC checks, find violations, remediate, create CDS wrappers/extensions, and release them. The main gaps are general-purpose create/update/delete operations for non-CDS ABAP objects, but those appear outside the server's intended focus.