Skip to main content
Glama
MCP SAP GUI Server

MCP SAP GUI Server

by kts982

Sap Read Tree

sap_read_tree
Read-only

Read node hierarchies and column values from SAP tree controls. For large trees, navigate child nodes or search by text instead.

Instructions

Read data from a tree control (TableTreeControl, ColumnTreeControl, etc.).

Returns node hierarchy with texts and column values. For large trees (e.g., SPRO with 1000+ nodes), use sap_get_tree_node_children for step-by-step navigation instead. Use sap_search_tree_nodes to find specific nodes by text.

total_nodes is the number of nodes read; truncated=true means the tree has more loaded nodes (available_nodes) than max_nodes allowed.

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": {
      "tree_id": "<tree_id>"
    },
    "name": "sap_read_tree"
  }
}

Input Schema

NameRequiredDescriptionDefault
tree_idYes
max_nodesNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already establish readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds useful behavioral context beyond annotations: it returns node hierarchy with texts and column values, explains total_nodes and truncated=true semantics, and clarifies available_nodes versus max_nodes. It does not cover error conditions or screen-state prerequisites, so it is strong but not exhaustive.

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?

The description is compact and front-loaded: purpose first, then alternatives for large-tree and search scenarios, then truncation semantics. Every sentence earns its place with no filler.

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

Completeness4/5

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

Given read-only annotations and an existing output schema, the description covers enough for correct invocation: purpose, alternative tools, and truncation behavior. The main remaining gap is that tree_id is never explained, which matters because schema coverage is 0%, but overall the definition is nearly complete.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate for both parameters. It meaningfully explains max_nodes through the truncated/available_nodes explanation, but tree_id is not described at all. Partial compensation for a two-parameter schema merits a 3.

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?

The description gives a specific verb and resource: 'Read data from a tree control' and names concrete control types (TableTreeControl, ColumnTreeControl). It explicitly distinguishes itself from sibling tools sap_get_tree_node_children and sap_search_tree_nodes by their use cases, so an agent can route correctly without opening other schemas.

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?

It states clear when-to-use guidance: use this tool for reading tree data, use sap_get_tree_node_children for large trees (e.g., SPRO with 1000+ nodes) for step-by-step navigation, and use sap_search_tree_nodes to find specific nodes by text. This provides explicit alternatives and the conditions that select them.

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