Skip to main content
Glama

GetTableVersionDiff

Compares two ABAP table versions from version history and returns the unified diff of their source code.

Instructions

[read-only] Compares the two ABAP table versions named by content_uri_from and content_uri_to, entries of its version history: answers the unified diff of their sources. Recordable: in batch mode a call is recorded under the next number and answers with empty content; its answer is read by number after the batch ends.

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": {
      "content_uri_from": "<content_uri_from>",
      "content_uri_to": "<content_uri_to>"
    },
    "name": "GetTableVersionDiff"
  }
}

Input Schema

NameRequiredDescriptionDefault
content_uri_toYesOpaque content_uri of the NEW/compare version, from the ABAP table's version history.
content_uri_fromYesOpaque content_uri of the OLD/base version, from the ABAP table's version history.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv20.1.0
    • changedInput schema / properties / content_uri_from / description
      Previous value: -"Opaque content_uri of the OLD/base version (from a GetTableVersions entry)."New value: +"Opaque content_uri of the OLD/base version, from the ABAP table's version history."
    • changedInput schema / properties / content_uri_to / description
      Previous value: -"Opaque content_uri of the NEW/compare version (from a GetTableVersions entry)."New value: +"Opaque content_uri of the NEW/compare version, from the ABAP table's version history."
  2. Addedv8.5.0

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does so reasonably: it declares read-only status, states the input URIs come from version history, describes the output as a unified diff, and explains the non-obvious batch recording/empty-response behavior. It omits error handling and diff-size/ordering caveats.

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 read-only marker and core purpose, then the batch note in a single follow-on sentence. The colon-chained phrasing is slightly dense but every clause is informative.

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?

For a two-parameter read-only diff with full schema coverage and no output schema, the description covers purpose, inputs' origin, return shape, and batch semantics. Only edge-case behavior (invalid URIs, large diffs) is missing.

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 coverage is 100% and the schema already labels from=OLD/base and to=NEW/compare, so the description adds only the reminder that both are version-history entries. Baseline 3 applies since the schema does the heavy lifting.

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 (Compares) plus the exact resource (two ABAP table versions named by content_uri_from / content_uri_to) and the return (unified diff of their sources). This clearly separates it from GetTableVersions (list) and GetTableVersionSource (single source), both present as siblings.

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

Usage Guidelines3/5

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

It explains the batch-mode usage pattern well — call is recorded, answers empty, read back by number after BatchEnd — but never explicitly says when to prefer this over GetTableVersionSource or GetTableVersions, nor what to do if a URI is invalid.

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

Deploy Server

Other Tools