Integrations

SAP Integration via MCP

riogentix integrates with SAP systems using the Model Context Protocol (MCP) — an open standard that lets AI agents interact with enterprise data sources in a structured, secure way. This enables your AI workflows to read and write SAP data without custom ABAP development.

What is MCP?

The Model Context Protocol is an open protocol that standardises how AI models connect to external tools and data sources. In riogentix, MCP servers act as intelligent bridges between your AI agents and SAP backends.

Benefits:

Supported SAP Systems

SystemConnection Method
SAP S/4HANAOData v4 / REST APIs via SAP API Business Hub
SAP ECC / R/3RFC/BAPI via SAP MCP Connector
SAP BTPSAP BTP Destination Service + OAuth2
SAP SuccessFactorsOData v2 APIs
SAP AribaREST APIs via Ariba Network
SAP Business OneService Layer REST API

Setting Up the SAP MCP Connector

Step 1 — Deploy the SAP MCP Server

Deploy the riogentix SAP MCP Server in your network (Docker or Kubernetes):

# For SAP ECC / R/3 (RFC-based)
docker run -d \
  -e SAP_HOST=your-sap-host \
  -e SAP_CLIENT=100 \
  -e SAP_USER=RFC_USER \
  -e SAP_PASS=your-password \
  -p 3001:3001 \
  riogentix/sap-mcp-server:latest

For S/4HANA Cloud (OData/OAuth2):

docker run -d \
  -e SAP_ODATA_BASE_URL=https://my-s4.sap.com/sap/opu/odata/sap \
  -e SAP_CLIENT_ID=your-client-id \
  -e SAP_CLIENT_SECRET=your-client-secret \
  -e SAP_TOKEN_URL=https://your-tenant.authentication.eu10.hana.ondemand.com/oauth/token \
  -p 3001:3001 \
  riogentix/sap-mcp-s4-server:latest

Step 2 — Register the MCP Server in riogentix

  1. Go to Settings → MCP Servers → + Add
  2. Enter the server URL: http://your-mcp-host:3001
  3. Choose authentication (API key or mTLS)
  4. Click Test Connection — riogentix will list all discovered tools
  5. Save

Step 3 — Attach SAP Tools to an AI Agent

  1. Open your workflow and add an AI Agent node
  2. In the Tools section, click + Add Tool → MCP Tool
  3. Select your registered SAP MCP server
  4. Choose which tools to expose (e.g., sap_get_purchase_orders, sap_create_sales_order)

Available SAP Tools (Examples)

Tool NameDescription
sap_get_materialRetrieve material master data by material number
sap_list_purchase_ordersList open POs filtered by vendor, date, or status
sap_create_sales_orderCreate a new sales order with line items
sap_get_customerRetrieve customer master data
sap_post_goods_receiptPost a goods receipt against a PO
sap_get_financial_documentRetrieve FI document details
sap_list_open_invoicesList open vendor invoices
sap_run_reportExecute an ABAP report and return output

Example: AI-Powered Purchase Order Review

[Webhook Trigger: new PO approval request]
        ↓
[AI Agent (Claude 3.5)]
  Tools:
    - sap_get_purchase_order
    - sap_get_vendor
    - sap_list_open_invoices
        ↓
[AI evaluates: approve, flag, or escalate]
        ↓
[Switch: decision]
  → Approve: sap_approve_purchase_order
  → Flag: Post to Teams #procurement-review
  → Escalate: Create Jira ticket for CFO approval

Example: SAP to CRM Daily Sync

[Schedule Trigger: daily at 6:00 AM]
        ↓
[SAP MCP: sap_list_customers (updated in last 24h)]
        ↓
[AI Agent: Enrich and normalise customer records]
        ↓
[Salesforce: Upsert Account records]
        ↓
[Slack: Post sync summary to #data-ops]

Example: 3-Way Invoice Match

[Email Trigger: invoices@company.com]
        ↓
[Extract PDF attachment]
        ↓
[AI Agent: Extract invoice fields (vendor, amount, line items)]
        ↓
[SAP MCP: sap_get_purchase_order (match by PO number)]
        ↓
[AI Agent: 3-way match — PO vs Goods Receipt vs Invoice]
        ↓
[Switch: matched / discrepancy]
  → Matched: sap_post_invoice_receipt
  → Discrepancy: ServiceNow task for AP team

Custom SAP Tools

Extend the SAP MCP server with your own BAPI or RFC wrappers by adding entries to its tools.json:

{
  "name": "sap_get_vendor_scorecard",
  "description": "Retrieve vendor quality scorecard including delivery rate, defect rate, and payment terms",
  "parameters": {
    "vendor_id": { "type": "string", "description": "SAP vendor number" },
    "fiscal_year": { "type": "string", "description": "Fiscal year (e.g. 2025)" }
  },
  "bapi": "ZVENDOR_SCORECARD_GET",
  "input_mapping": { "VENDOR": "vendor_id", "GJAHR": "fiscal_year" }
}

New tools appear automatically in riogentix after the server restarts.

Security