Skip to main content
Glama
kts982

MCP SAP GUI Server

by kts982

sap_handle_popup

Read and respond to the current SAP GUI popup or modal dialog by inspecting content, confirming, cancelling, pressing a button, or taking a safe automatic action.

Instructions

Read and optionally act on the current popup/modal dialog.

Use when active_window shows wnd[1] or higher. Combines popup inspection and response in a single call.

Actions:

  • read: return popup content without acting (default)

  • confirm: press OK/Yes/Continue/Enter on the popup

  • cancel: press Cancel (or F12) on the popup; never No, which on a save prompt drops the changes

  • press: press a specific button by its text or tooltip

  • auto: take only a clearly safe action; otherwise return the popup read-only

A press that may save (a Save button, or Yes/OK on a popup about saving, e.g. "Save the changes first?") asks the user first, like F11 in sap_send_key. So does any answer but Cancel when the popup's question cannot be read (question_readable: false; SAP GUI's Edge browser control). On such a popup, confirm never falls back to Enter, and auto only reads. An accepted press reports confirmed_by_user: true.

Returns the popup contents plus classification, requested action, and post-action screen/popup state when something was pressed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionNoread
button_textNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the annotations: it discloses that presses which may save prompt the user first, that unreadable questions (question_readable: false, Edge control) restrict behavior, that confirm never falls back to Enter in that case, and that accepted presses report confirmed_by_user: true. This is exactly the kind of consequence-level context annotations (readOnlyHint/destructiveHint) cannot convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the one-line purpose and the usage trigger before the action list, and the bullet structure makes scanning easy. It is somewhat long, with a dense paragraph on confirmation/safety behavior, but nearly every clause carries actionable information rather than padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating, multi-mode dialog tool with an output schema present, the description covers triggers, per-action semantics, safety constraints, and the user-confirmation contract. Since an output schema exists it needn't detail return shape, though it usefully notes what is reported back. Nothing needed to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must carry the parameter burden, and it does: all five enum values of 'action' are defined with their distinct effects, and 'press' is explained as 'press a specific button by its text or tooltip', covering button_text's meaning. This fully compensates for the undocumented schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Read and optionally act on the current popup/modal dialog') and explicitly notes it 'Combines popup inspection and response in a single call', which distinguishes it from the read-only sibling sap_get_popup_window and from sap_press_button. The action enum is spelled out so an agent knows exactly what operations are available.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit trigger ('Use when active_window shows wnd[1] or higher') and enumerates each action with when-to-use semantics, including a negative rule ('never No, which on a save prompt drops the changes') and the conservative fallback ('auto: take only a clearly safe action; otherwise return the popup read-only'). Alternatives like sap_send_key F11 are referenced for the confirmation-prompt case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.