Skip to main content
Glama
MCP SAP GUI Server

MCP SAP GUI Server

by kts982

Sap Select All Rows

sap_select_all_rows

Selects all rows in an SAP ALV grid for bulk actions; use it only with ALV grids, as it does not work on GuiTableControl.

Instructions

Select all rows in an ALV grid. Does NOT work on GuiTableControl.

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": {
      "grid_id": "<grid_id>"
    },
    "name": "sap_select_all_rows"
  }
}

Input Schema

NameRequiredDescriptionDefault
grid_idYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A3.8/5.0
Behavior3/5

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

Annotations declare non-destructive but readOnlyHint=false, and the description confirms the UI-state nature of the operation only implicitly. The failure mode on GuiTableControl is a genuinely useful disclosure beyond annotations, but nothing is said about whether prior selection is cleared, whether the grid needs focus, or where a valid grid_id comes from.

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?

Two sentences, zero filler, with the core action front-loaded and the constraint immediately after. Nothing to trim.

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

Completeness3/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 values need no explanation, and the ALV-vs-table-control boundary is covered. The remaining gap is the sole required parameter's provenance, which is essential for a correct call on a tool with 0% schema coverage.

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

Parameters2/5

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

Schema description coverage is 0%, so the description carries the full burden for grid_id — yet it never explains what a grid_id is, how to obtain it (e.g., from screen elements or table info), or its format. The single parameter is entirely undocumented in both places.

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 ('Select all rows in an ALV grid') and immediately distinguishes itself from table-control siblings by excluding GuiTableControl. An agent can tell this apart from sap_select_multiple_rows or sap_select_all_table_control_columns 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?

The negative constraint ('Does NOT work on GuiTableControl') gives a clear when-not-to-use rule, which is more than most siblings offer. It stops short of naming the alternative tool the agent should use instead on a GuiTableControl, leaving one inference step.

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