Technology Blog Posts by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
1nbuc
Explorer
2,322

Introduction to MCP Integration Suite

With this blog I would like to showcase how you can extend Integration Suite development with AI.

To extend the capability of AI with other tools we can use AI Chat clients along with the ModelContextProtocol (MCP). If you want to know more about this I recommend you this blog by @MarioAndreschak 

I created a custom MCP Server to give LLMs access to Integration Suits content and lets it perform analysis or development operations. 

 

What Can You Do With It?

The MCP Integration Suite Server enables you to perform key integration tasks through AI assistants:

  • Package Management - Create, retrieve, and manage integration packages
  • Integration Flow Management - Create, modify, deploy, and visualize IFlows
  • Message Mapping - Create and update message mappings and associated data types
  • Testing - Send HTTP requests to integration endpoints
  • Monitoring - Analyse Messages from the monitoring tab

 

Setup and Configuration

I highly recommend using the tool with Cline, which is an extension for VSCode, but you can use every client that supports MCP. The installation is also mentioned in @MarioAndreschak 's blog above. For LLM providers I had the best experience with Google's Gemini 2.5 pro.

You can get an API Key under https://aistudio.google.com/app/apikey  You will probably have to create a billing account in the Google Cloud Console, but currently they offer up to two free requests per minute, which was enough for me.

Another LLM option is Claude which costed like 0.50$ per task for me.

Get your API Key and add it to claude. Next you want to install the Integration Suite MCP Server in Cline.

Get started by cloning the project and setting up authentication. Make sure you have NodeJS > 20 and NPM installed on your machine

git clone https://github.com/1nbuc/mcp-integration-suite.git
cd mcp-integration-suite
npm install
npm run build
cp .env.example .env

Next step is to set up Authentication and Links to connect with IS API.

You can either use basic authentication with your S-User credentials 

Option 1:

For the API_BASE_URL please try to use another Integration Suite API instance in your subaccount. I didn't find a way to get this URL otherwise as of right now. So use option 2 if this doesn't work for you

API_BASE_URL=https://<cpi uri>.<tenant>.hana.ondemand.com/api/v1

# Credentials from https://account.sap.com/manage/accounts user account, not your universal ID

API_USER=S001234567
API_PASS=ooOoPsieEPWLeak-_-

Or create OAuth2 Client/Credentials in BTP by creating Service keys on an API Instance:

Option 2:

1nbuc_0-1743854162281.png

Assign the permissions you want the AI to have:

1nbuc_1-1743854328833.png

Click on the Created Instance and Create a Service Key:

1nbuc_2-1743854537584.png

View the service key and add the corresponding values in the projects .env

For the API_BASE_URL append the URL from the service key with /api/v1

Creating credentials for Sending messages (optional):

This is only used for sending messages against an IFlow to test it, which can be quite useful.

You can create another instance/service key the same way but on the instance creation popup use integration-flow instead of api. For the CPI_BASE_URL use the URL you send data to without any paths 

Then in the .env add corresponding values to

# only used for sending test messages to IS
CPI_BASE_URL=https://<cpi url>.<tenant>.hana.ondemand.com
CPI_OAUTH_CLIENT_ID=
CPI_OAUTH_CLIENT_SECRET=
CPI_OAUTH_TOKEN_URL=https://<subaccount>.authentication.<tenant>.hana.ondemand.com/oauth/token

Next, add the MCP Server in Cline:

1nbuc_3-1743855909194.png

Replace the JSON with this. Change the project Path to your local project Path

{
  "mcpServers": {
    "mcp-integration-suite": {
      "autoApprove": [],
      "disabled": false,
      "timeout": 300,
      "command": "node",
      "args": [
        "<project Path>/dist/index.js"
      ],
      "transportType": "stdio"
    }
  }
}

After saving you should see the server in the list

1nbuc_4-1743856025128.png

 

What can you actually do with it?

Here are some examples that I created using the above configuration that worked, without any other instructions.

Example 1: Creating a Basic HTTP IFlow

"Create a new iflow in package 'MyPackage' with name 'if_simple_http' that receives data via HTTP on /simplehttp and sends it to https://echo.free.beeceptor.com via HTTP Post."

The tool will generate all necessary configuration and can even deploy the IFlow for you.

1nbuc_5-1743856180525.png

You can also specify weather the IFlow should be deployed or not. If the deployment fails, the AI will try to fix the IFlow based on the deployment error.

Example 2: Message Mapping Development

Creating message mappings between complex structures is significantly simplified:

"Create a message mapping called 'mm_invoice_demo' in package 'MyPackage' which maps between two different invoice datatypes. Generate the datatypes as well"

The AI will generate both the mapping and the required XSD schemas.

1nbuc_6-1743856340316.png

Generate XML Data based on the source type of mm_invoice_demo

Example 3: Monitoring Integration Messages

Need to check for errors? Just ask:

"Get all messages with errors from the last two days."

The tool will fetch and display the relevant error messages, making troubleshooting much faster.

You can also run more complex queries like "How much messages were processed this year per iflow accross all packages"

 

How to improve results:

The tool does pretty well on read-only stuff like describing complex scenarios or querying message logs. It has its struggles when you try to develop more complex IFlows or mappings, a good way to resolve these issues is giving existing examples like "Generate a iflow which ...instructions... It is very similar to iflow if_very_similar_iflow"

 

Conclusion

The MCP Integration Suite Server can significantly improve productivity when working with SAP Integration Suite. Especially doing read only stuff like message monitoring almost always works without errors. What I personally like to do a lot is generating test data with a promp like "generate XML data for source type of mapping XY"

Let me know your thoughts/experiences on this topic in the comments!

Also you can check out the project readme for more info

 

3 Comments
EuricoBorges
Participant
0 Kudos

@1nbuc  this project is an excelent idea. I'm looking forward to see more achivements with it in further blog articles.

sjorge
Explorer
0 Kudos

Really cool! Will play around with it!

U004311
Discoverer

एहो

@1nbuc Thank you very much for sharing. Really looking forward to implement a test scenario and dig deeper!