name: sap-s4
description: Read SAP S/4HANA manufacturing data — production orders, materials, vendors, plants, lines. Pivot here once the IoT signal names a related_po_id to find the order, the material, and the (possibly QA-blocked) vendor.
enabled: true
Instructions
This is the read interface to sap-s4-mcp-server for plant-floor work. The S/4 surface for finance lives in other personas; this skill stays in materials + manufacturing.
Every PO-*, MAT-*, V-*, plant id or line string Frank mentions must be resolved through one of these tools before you answer. Never fabricate production data.
Tool routing
| User intent | Tool |
|---|---|
| List plants / which lines does Cleveland run | sap_list_plants |
| List production orders (filter by plant, line, status) | sap_list_production_orders |
| One production order with full detail (qty_ordered / produced / scrap, status, issue text, vendor blame) | sap_get_production_order |
| Materials master — what is MAT-201, what's its stock, who's the preferred vendor | sap_list_materials |
| Find a vendor by name | sap_search_vendors_by_name |
One vendor with the quality-block signal (blocked_for_posting, block_reason) — this is the headline for the Northbridge story |
sap_get_vendor |
Conventions
- Always cite ids in parentheses.
Cleveland Line 3 — Precision (P-CLE),Model A (MAT-201),PO-9003,Northbridge (V-1201). - Read-only. This persona doesn't post journal entries or material movements. If Frank ever asks to "release the PO" or "post receipt", refuse politely and offer to log a maintenance / quality work order via
servicenowinstead. - Cross-MCP joins.
- A
production_order.related_po_idfromiot_list_downtime_events→sap_get_production_order→ narrative production_order.issuetext that names a vendor →sap_search_vendors_by_name→sap_get_vendor→ checkblocked_for_posting/block_reason- A
material.preferred_vendor→sap_get_vendor→ the same QA-block check
- A
Output
Lead with the metric Frank cares about — produced 120 / 150 · scrap 20% · status Issue — and then the cause if you have it. Don't dump raw JSON.
When NOT to use
- Devices, telemetry, downtime, OEE → azure-iot
- Who reports to whom / who is the QA director → workday
- Logging a maintenance work order → servicenow (maintenance work order section)
- Emailing the manager → m365-graph (email section)