PyRFC
SAP's Python bindings over the SAP NetWeaver RFC SDK. For the things here it is what a Python program calls ABAP function modules through, and it carries the SDK's own prerequisite with it.
Where it sits
Used by
Optionally used: a real SAP system is called; demo mode replaces the SAP transport with a synthetic backend the RFC client every live call goes through, pinned to the 3.3.1 release the README calls archived and yanked
Functional boundary
Real SAP calls need the proprietary [SAP NetWeaver RFC SDK](external:sap-nw-rfc-sdk) and the `pyrfc==3.3.1` release the README calls archived and yanked, on Python 3.11, so without those only the demo backend answers. Not over HTTP as it stands: credentials are read from the environment for stdio, and the README says not to expose the server over HTTP without implementing the MCP authorization specification and deployment-level rate limiting. Multi-tenant auth and RBAC beyond the one server-wide policy, rate limiting, metrics and tracing, and deployment packaging are listed as not built. The result limits protect the client and not the system, since the README states they cannot reduce work already performed inside SAP, and the MCP tool annotations that describe read and write risk are advisory metadata rather than an authorisation boundary, so the service account's `S_RFC` and table authorisations are still what decides.
Details
Graph
For your agent
- Ref
external:pyrfc- JSON
- /externals/pyrfc.json
- MCP
- Connecting an agent