MCP server for SAP GUI for Windows automation via the SAP GUI Scripting API.
Overview
An MCP (Model Context Protocol) server that enables AI assistants to interact with SAP GUI for Windows through the SAP GUI Scripting API. It is client-agnostic: if your MCP client can launch a local stdio server, it can use this project. Examples in this README use Claude because the setup is easy to demonstrate, but the same server can be used from Codex, GitHub Copilot, Gemini CLI, and similar MCP-capable tools. Current release: 0.3.0 for local Windows use over MCP stdio. - GitHub workflows are included for CI, Docs, Dependency Audit, and tag-based Release. - Primary repository: GitHub (kts982/mcp-sap-gui). The agent can now show you an approval card at any checkpoint: before a batch write, before saving, or whenever you ask ("before adding country GR, show me the values"). It carries the current screenshot, session context, and the exact values about to be written — password-shaped values masked.
README
MCP SAP GUI Server
An MCP server that lets AI assistants work in SAP GUI for Windows: ask in plain language, and the assistant reads screens and tables, fills in fields, runs transactions and handles popups, through SAP’s own Scripting API. Saving always waits for your yes.
It works with any MCP client that can start a local server: Claude Code, GitHub Copilot, Codex, Google Antigravity and others.
What it does
- Looks things up: display transactions, fields, ALV grids, table controls, classic report lists and trees, read in full however long they are.
- Fills in and changes: fields, checkboxes, dropdowns, whole forms, table cells, F4 value help, table maintenance and IMG activities.
- Navigates: transactions, buttons, function keys, menus, tabs, SPRO and other trees.
- Handles popups, recognising questions, warnings, F4 lists and SAP messages in any logon language.
- Shows before it saves: a preview of the screen and the values about to be written, and screenshots on request.
More, with example prompts: What it can do.
Requirements
- Windows with SAP GUI for Windows (8.10 verified, 8.00 works; SAP GUI versions), and SAP Logon running.
- SAP GUI Scripting allowed in SAP GUI and on the SAP system: Preparing SAP.
- uv, which runs the server from PyPI.
- An MCP client. To approve saves, one that shows the server’s confirmation questions (listed below).
Quick start
-
Install uv:
winget install --id=astral-sh.uv -e -
Add the server to your MCP client:
Command: uvx Arguments: mcp-sap-gui[screenshots] Transport: stdioIn the Claude Code CLI, for example:
claude mcp add sap-gui --scope user -- uvx "mcp-sap-gui[screenshots]". Every client: Clients. -
Log on to SAP in SAP Logon, then ask: “Connect to my open SAP session and tell me what system I’m on.”
Step by step, including updating to a new release: Getting started.
Safety
- Saves wait for your yes, and you can make other changes wait too, for example every field write: Confirmations.
- A transaction policy decides which transactions the assistant may start; read-only mode and profiles limit it further.
- An audit log records every call, question and answer.
- Everything runs as the logged-on SAP user, under that user’s authorizations, which remain the real boundary.
Details for admins, Basis and security teams: Security guide.
Which clients show the confirmation questions
Tested on 2026-10-28: the Claude Code CLI, the GitHub Copilot CLI, VS Code with GitHub Copilot and the Codex CLI show them. The Claude desktop app does not (its Code tab declines without showing anything, its Chat and Cowork tabs do not support them), so a save is refused there: use it for reading. The full table: Clients.
Documentation
| Page | For |
|---|---|
| Getting started | Installing it and the first questions |
| What it can do | What to ask, and what is covered |
| Clients | Setup per MCP client, and which ones show the confirmation questions |
| Confirmations | What asks, and what each answer does |
| Troubleshooting | When something does not work |
| Preparing SAP | Enabling scripting, also for named users or read-only; SAP Business Client |
| Configuration | Every option and environment variable; profiles, HTTP, code mode |
| Security guide | Safeguards, the transaction policy, the audit log, a recommended setup |
| SAP GUI versions | Which SAP GUI releases work, and how |
| Tools | Every tool the assistant can call |
| CHANGELOG | What changed in each release |
What’s new
0.6.0 supports MCP 2026-07-28, the newest protocol version, next to the earlier ones, and the confirmation questions work on both. It needs Python 3.11 or later, retires sap_set_policy_profile, names the MCP client in the audit log, and comes with reorganised documentation. Every change: CHANGELOG.
Contributing
Bug reports and pull requests are welcome: CONTRIBUTING. Security issues: SECURITY.
License
MIT. See LICENSE.
Disclaimer
This project is not affiliated with, endorsed by, or sponsored by SAP SE. SAP, SAP GUI, and other SAP products mentioned are trademarks of SAP SE.
Use of this software with SAP systems should comply with your SAP licensing agreement and your organization’s security policies.
Install
This server does not publish a one-line install command.
Open the repository installation guide New to MCP? Start with the mcpskill.org guide →