The ABAP-ADT-API MCP-Server is a Model Context Protocol (MCP) server designed to facilitate seamless communication between ABAP systems and MCP clients. It is based on abap-adt-api and provides a suite of tools and resources for managing ABAP objects, handling transport requests, performing code analysis, and more, enhancing the efficiency and effectiveness of ABAP development workflows.
This project was generated by Cline.
- Authentication: Securely authenticate with ABAP systems using the
login
tool. - Object Management: Create, read, update, and delete ABAP objects seamlessly.
- Transport Handling: Manage transport requests with tools like
createTransport
andtransportInfo
. - Code Analysis: Perform syntax checks and retrieve code completion suggestions.
- Extensibility: Easily extend the server with additional tools and resources as needed.
- Session Management: Handle session caching and termination using
dropSession
andlogout
.
To install ABAP-ADT-API MCP-Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @mario-andreschak/mcp-abap-abap-adt-api --client claude
- Node.js: Ensure you have Node.js installed. You can download it from here.
- ABAP System Access: Credentials and URL to access the ABAP system.
-
Clone the Repository
git clone https://github.com/mario-andreschak/mcp-abap-abap-adt-api.git cd mcp-abap-abap-adt-api
-
Install Dependencies
npm install
-
Configure Environment Variables
An
.env.example
file is provided in the root directory as a template for the required environment variables. To set up your environment:a. Copy the
.env.example
file and rename it to.env
:cp .env.example .env
b. Open the
.env
file and replace the placeholder values with your actual SAP connection details:SAP_URL=https://your-sap-server.com:44300 SAP_USER=YOUR_SAP_USERNAME SAP_PASSWORD=YOUR_SAP_PASSWORD SAP_CLIENT=YOUR_SAP_CLIENT SAP_LANGUAGE=YOUR_SAP_LANGUAGE
Note: The SAP_CLIENT and SAP_LANGUAGE variables are optional but recommended.
If you're using self-signed certificates, you can also set:
NODE_TLS_REJECT_UNAUTHORIZED="0"
IMPORTANT: Never commit your
.env
file to version control. It's already included in.gitignore
to prevent accidental commits. -
Build the Project
npm run build
-
Run the Server
npm run start
(or alternatively integrate the MCP Server into VSCode)
Once the server is running, you can interact with it using MCP clients or tools that support the Model Context Protocol (e.g. Cline).
Contributions are welcome! Please follow these steps to contribute:
-
Fork the Repository
-
Create a New Branch
git checkout -b feature/your-feature-name
-
Commit Your Changes
git commit -m "Add some feature"
-
Push to the Branch
git push origin feature/your-feature-name
-
Open a Pull Request
This project is licensed under the MIT License.