Skip to main content
Glama
MCP SAP GUI Server

MCP SAP GUI Server

by kts982

Sap Send Key

sap_send_key

Press a keyboard or function key in the SAP GUI window to confirm, navigate, refresh, execute, save, or cancel, and get an error when that key is unavailable on the current screen.

Instructions

Press a keyboard key / function key in the SAP window (sendVKey).

Common keys: Enter (confirm), F1 (Help), F3 (Back), F4 (search help / value help), F5 (Refresh), F8 (Execute), F11 (Save), F12 (Cancel/Escape). Also supports Shift+F1..F9 and Ctrl+F, Ctrl+G, Ctrl+P.

A key that is not active on the screen is not sent: the response has an error and available_keys, the keys this screen accepts.

F11 / Save requires user confirmation via elicitation before proceeding; the response then has confirmed_by_user: true. A declined save returns status 'cancelled' with an error.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "key": "<key>"
    },
    "name": "sap_send_key"
  }
}

Input Schema

NameRequiredDescriptionDefault
keyYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false; the description goes well beyond by disclosing that inactive keys are rejected with an error plus available_keys, that F11/Save triggers an elicitation confirmation and sets confirmed_by_user, and that a declined save returns status 'cancelled'. This is exactly the mutation-side behavioral context an agent needs.

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

Conciseness5/5

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

Front-loads the verb and API name, then layers key meanings, failure behavior, and the save-confirmation caveat in short scannable paragraphs. No sentence is filler; the F11/Save note is the only repeated theme and it carries distinct informational content.

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?

An output schema exists, so return-field enumeration isn't required, yet the description still surfaces the operationally important ones (error, available_keys, confirmed_by_user, status 'cancelled'). For a one-parameter, non-destructive mutation tool this is complete.

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 description coverage is 0%, so the single parameter relies entirely on the enum. The description compensates fully by glossing the semantically opaque entries (F4 = search/value help, F8 = Execute, F11 = Save, F12 = Cancel/Escape) and covering the Shift/Ctrl variants the enum merely lists.

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 and resource ('Press a keyboard key / function key in the SAP window') and names the underlying API (sendVKey). The key-vs-button distinction separates it cleanly from the sibling sap_press_button, so an agent can route correctly without opening either schema.

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

Usage Guidelines4/5

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

Provides concrete guidance on which key does what (Enter confirms, F3 goes back, F4 opens value help, F8 executes), effectively telling the agent when each key is the right choice. It stops short of an explicit when-not-to-use-this-tool statement or a direct alt-tool routing rule, which keeps it from a 5.

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