sap-security-mcp
An entirely read-only security analysis surface: nineteen tools, five resources and eight prompts for audits, SOX and segregation-of-duties review, behind OAuth 2.0 with PKCE. The vendor hosts an endpoint, and the README documents running it yourself.
Everything else pointed at an SAP system in this corpus can change something; this one cannot, and says so as a feature. Nineteen tools across user management, security analysis, compliance auditing and role and authorisation review, all read-only; five resources describing the system, its security posture, the compliance frameworks and the controls; and eight prepared prompts for the workflows an auditor actually runs, SOX and segregation of duties among them. Authentication is full RFC 8414 and 9728 OAuth with PKCE and dynamic client registration, which is more than most hosted endpoints in this corner attempt.
Facts
Where it sits
Who is behind it
In the atlas: maintains 1@SYNTAAImaintainermohanjani79Contributes to this
In the atlas: contributes to 1@mohanjani791 contributor
Before choosing this
Conditions
PracticalFunctional boundary
Read-only does not mean low-stakes: a complete picture of who can do what in an SAP system is exactly what an attacker would want, and the ready-made endpoint is the vendor's rather than yours — the README also documents running the server yourself. The authentication is careful; the question of what leaves your landscape is still yours.
PolicySAP API Policy 4.2026a§ 1.1, 1.2, 2.2.2from Agent access to your systemsAn MCP server uses SAP APIs to supply tools, resources or data to an agent.
- § 1.1 Published APIs. Published APIs are made available for the documented purposes identified by SAP, including integration, extensions and data exchange.
- § 1.2 Non-Published APIs. Customer and third-party applications must not access non-published APIs except where documentation permits it or SAP otherwise authorizes it.
- § 2.2.2 AI call sequences and data extraction. Outside SAP-endorsed architectures, data services or expressly identified pathways, the policy prohibits specified agentic API use and systematic or large-scale extraction.
MCP does not replace the API's documented-use boundary. Check that every endpoint is published for the intended use and whether the policy's AI-call or extraction provisions apply to the design.
SAP API Policy 4.2026a →What it declares
Every artifact
- Type
- MCP server
- Origin
- Independently maintained
As an MCP server
- Runs as
- vendor's endpointcentral server
- Authentication
- OAuth / OIDC
- Tools
- 19
- Read-only
- yesstates it is
- Guardrails
2 quoted from README show all
Supports Dynamic Client Registration (RFC 7591) and token revocation (RFC 7009).
MCPNOAUTH=1 python server.py # without OAuth (development)
Connections
Giving an AI agent access to the systems you run over MCP
Download
README
quoted from SYNTAAI/sap-security-mcp under Apache-2.0, readSyntaAI ERP Security MCP Server
AI-powered security analysis for SAP systems via the Model Context Protocol (MCP).
Server URL: https://mcp.syntaai.com/mcp
Features
- 19 Tools — User management, security analysis, compliance auditing, role & authorization review (all read-only)
- 5 Resources — System info, security overview, compliance frameworks, security controls, user summary
- 8 Prompts — Pre-built workflows for security audits, SOX compliance, SoD analysis, and more
- OAuth 2.0 — Full RFC 8414/9728 compliant authentication with PKCE and Dynamic Client Registration
Example Interactions
Example 1: Security Audit
User prompt: "Are there any users with SAP_ALL profile?"
What happens:
- Server scans all user profiles for dangerous authorizations
- Returns list of users with SAP_ALL, SAP_NEW, S_A.SYSTEM
- Provides risk assessment and remediation recommendations
Tool used: check_critical_authorizations
Example 2: Compliance Check
User prompt: "Generate a SOX compliance report"
What happens:
- Server runs SOX assessment across access controls, SoD, password policy
- Returns overall compliance score with findings
- Lists critical gaps with specific framework control references
Tool used: generate_compliance_report
Example 3: User Access Review
User prompt: "Find all users who haven't logged in for 90 days and check if any have critical roles"
What happens:
- Server identifies inactive users past the threshold
- Cross-references with privileged access and role assignments
- Recommends lock/disable actions prioritized by risk
Tools used: find_inactive_users, list_privileged_users
Tools Reference
User Management
| Tool | Description | Annotations |
|---|---|---|
list_users | List SAP users with status/type filtering | Read-only |
get_user_details | Get detailed user info including roles and login history | Read-only |
list_user_roles | List roles and profiles for a user | Read-only |
find_inactive_users | Find users inactive for N days | Read-only |
Security Analysis
| Tool | Description | Annotations |
|---|---|---|
get_security_parameters | SAP security parameters vs best practices | Read-only |
check_critical_authorizations | Find users with SAP_ALL/SAP_NEW/S_A.SYSTEM | Read-only |
get_audit_log | Retrieve security audit log entries | Read-only |
check_default_passwords | Check for default/initial passwords | Read-only |
get_rfc_connections | Analyze RFC destinations for credential risks | Read-only |
Compliance & Audit
| Tool | Description | Annotations |
|---|---|---|
run_sod_check | Check Segregation of Duties violations | Read-only |
generate_compliance_report | Generate SOX/GDPR/ISO27001/NIST report | Read-only |
list_privileged_users | List users with elevated privileges | Read-only |
check_password_policy | Analyze password policy vs best practices | Read-only |
get_transport_log | Transport request log for change management | Read-only |
Role & Authorization
| Tool | Description | Annotations |
|---|---|---|
list_roles | List security roles with search | Read-only |
get_role_details | Get role details including authorizations | Read-only |
compare_user_access | Compare access rights between two users | Read-only |
find_users_with_role | Find all users assigned a specific role | Read-only |
get_authorization_trace | Get authorization check trace entries | Read-only |
Authentication
OAuth 2.0 with PKCE. Discovery endpoints:
GET /.well-known/oauth-authorization-server(RFC 8414)GET /.well-known/oauth-protected-resource(RFC 9728)
Supports Dynamic Client Registration (RFC 7591) and token revocation (RFC 7009).
Deployment
# Install
cd /opt/mcp-server
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# Run
python server.py # with OAuth (production)
MCP_NO_AUTH=1 python server.py # without OAuth (development)
License
Apache License 2.0 — see LICENSE for details.
Others providing
Compare all 12 on the Agent access to your systems page →- @abap2ui5/mcp-server@abap2ui5/mcp-serverAn MCP server that puts the abap2UI5 development loop on the machine an agent runs on: check the view the ABAP builds, photograph it, deploy the class into a sandbox, boot the app headless and read the errors.community org, abapMCP server for the abap2UI5 check, deploy and run loop
- abap2UI5 for VS Codeabap2UI5 for VS CodeA VS Code extension for abap2UI5 apps: F9 starts the app class in a preview beside the source, Ctrl+F3 activates the class and reloads it, and the abap2UI5 linter runs in the editor while you type.community org, abapVS Code extension to preview, activate and lint abap2UI5 apps
- abapsmithabapsmithAn MCP server that lets an LLM develop in ABAP on a live system over ADT, with writes off by default and every mutation recorded in a local journal that can undo it.independent, abapABAP MCP server over ADT with a local journal that can undo writes
- btp-sap-odata-to-mcp-serverbtp-sap-odata-to-mcp-serverExposes every OData service on an S/4HANA or ECC system as MCP tools, in three discovery levels so a large catalogue does not have to be loaded at once.independent, btpExposes S/4HANA or ECC OData services as MCP tools
- midasol/sap-mcp-servermidasol/sap-mcp-serverA Python MCP server for SAP Gateway with four read-only tools that authenticate, query, fetch one entity and list services, and one of the few here that publishes its test results.independent, btpPython MCP server for SAP Gateway OData operations
- odata_mcp_goodata_mcp_goA Go binary that bridges any OData v2 or v4 service to MCP — and can collapse the whole service into one tool when the generated tool list is too large to be usable.independent, btpGo binary bridging any OData v2 or v4 service to MCP
- odata_mcpodata_mcpThe Python original: reads an OData v2 service's metadata and generates MCP tools from it, with the SAP-specific conversions the raw protocol leaves to you.independent, btpPython bridge generating MCP tools from OData v2 metadata
- sap-mcp-serversap-mcp-serverReads SAP ECC and S/4HANA for an agent over Gateway OData and RFC, with a Node bridge that speaks the RFC protocol without the proprietary SAP NetWeaver RFC SDK.independent, abapReads SAP ECC and S/4HANA for an agent over Gateway OData and RFC, with a Node bridge that speaks the RFC protocol without the proprietary SAP NetWeaver RFC SDK.
- Skybuffer AI MCP serverSkybuffer AI MCP serverAn ABAP add-on that serves SAP business data, transactions and development context as MCP tools from an ICF node inside SAP ECC and S/4HANA, each call running as the signed-in user under PFCG authorization checks.independent, abapABAP add-on serving business data and transactions as MCP tools
- KlystronKlystronAn MCP server written in ABAP that runs inside the application server behind an ICF service and exposes typed tools for ABAP development, quality, transports, customizing, roles, Basis operations and integration, with a client-side plugin of SAP skills.independent, abapMCP server in ABAP inside the application server, with agent skills
- pyrfc-mcppyrfc-mcpAn MCP server for calling an SAP system's RFC-enabled function modules from an agent, built so that discovering a function does not authorise calling it: a read or a write is denied unless the function name matches an allowlist the server is configured with.independent, abapMCP server calling RFC-enabled function modules behind an allowlist
Details
Sources
Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.
Compatibility and provenance
Contributors
History in the atlas
- The concern it answers is reaching into an SAP system from outside, split out of MCP servers on this day; the sentence on the edge is unchanged.
- corrected against the README
- Triaged out of data/crawled/mcp-candidates.json, the sap-ai-mcp-servers sweep. Written from the repository's own README. Filed on the BTP door because there is no door for the SAP product it fronts and hard rule 9 allows one — the same strain recorded on the LeanIX entries.
- First seen.
For your agent
- Ref
artifact:syntaai-sap-security-mcp- JSON
- /artifacts/syntaai-sap-security-mcp.json
- MCP
- Connecting an agent