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:
- AI agents can call SAP functions using natural language intent ("get all open purchase orders for vendor X")
- No direct SAP GUI access required — all interaction is through defined, auditable tools
- Supports SAP ECC, SAP S/4HANA, SAP BTP, and SAP Business One
- Every tool call is logged in the riogentix Execution Inspector for full audit trail
Supported SAP Systems
| System | Connection Method |
|---|---|
| SAP S/4HANA | OData v4 / REST APIs via SAP API Business Hub |
| SAP ECC / R/3 | RFC/BAPI via SAP MCP Connector |
| SAP BTP | SAP BTP Destination Service + OAuth2 |
| SAP SuccessFactors | OData v2 APIs |
| SAP Ariba | REST APIs via Ariba Network |
| SAP Business One | Service 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
- Go to Settings → MCP Servers → + Add
- Enter the server URL:
http://your-mcp-host:3001 - Choose authentication (API key or mTLS)
- Click Test Connection — riogentix will list all discovered tools
- Save
Step 3 — Attach SAP Tools to an AI Agent
- Open your workflow and add an AI Agent node
- In the Tools section, click + Add Tool → MCP Tool
- Select your registered SAP MCP server
- Choose which tools to expose (e.g.,
sap_get_purchase_orders,sap_create_sales_order)
Available SAP Tools (Examples)
| Tool Name | Description |
|---|---|
sap_get_material | Retrieve material master data by material number |
sap_list_purchase_orders | List open POs filtered by vendor, date, or status |
sap_create_sales_order | Create a new sales order with line items |
sap_get_customer | Retrieve customer master data |
sap_post_goods_receipt | Post a goods receipt against a PO |
sap_get_financial_document | Retrieve FI document details |
sap_list_open_invoices | List open vendor invoices |
sap_run_report | Execute 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
- The SAP MCP server runs in your own network — SAP credentials never leave your environment
- All MCP tool calls are fully auditable in the Execution Inspector
- Use SAP role-based authorisation to restrict what the RFC user can access
- Enable MCP Request Signing in riogentix settings to prevent replay attacks