Skip to main content
Glama

UpdateMessageClassMessage

Updates or creates an ABAP message class message (T100), changing its text, flags, or description; use it when a message number is missing and should be inserted.

Instructions

Change the text / flags of an existing message in an ABAP message class (T100). Creates the message when the class lacks it (upsert). Runs outside batch mode.

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": {
      "message_class_name": "<message_class_name>",
      "msgno": "<msgno>",
      "msgtext": "<msgtext>"
    },
    "name": "UpdateMessageClassMessage"
  }
}

Input Schema

NameRequiredDescriptionDefault
msgnoYesMessage number (e.g., "001").
msgtextYesNew message text. May contain placeholders &1 &2 &3 &4 (or &).
descriptionNo(optional) Long description for the message.
self_explanatoryNo(optional) Mark the message as self-explanatory.
transport_requestNo(optional) Transport request number, not a task. Required for transportable objects.
message_class_nameYesParent message class name.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv16.0.0
    • changedInput schema / properties / message_class_name / description
      Previous value: -"Parent message class name (e.g., ZMY_MSGS)."New value: +"Parent message class name."
    • changedInput schema / properties / transport_request / description
      Previous value: -"(optional) Transport request number. Required for transportable objects."New value: +"(optional) Transport request number, not a task. Required for transportable objects."
  2. Addedv8.6.1

TDQS

A3.7/5.0
Behavior3/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 disclose two important traits: upsert semantics and non-batch execution. It omits whether the change requires transport, activation, or special authorization, and says nothing about failure/reversibility for a mutation. Useful but incomplete for a write tool.

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?

Three short sentences, front-loaded with the core action, then the upsert exception, then the execution constraint. No filler and 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?

For a 6-parameter write tool with no annotations and no output schema, the description should also address transport handling and any post-change activation requirement. It covers the upsert and batch aspects but leaves those gaps, so it is adequate rather than 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 100%, so all six parameters including transport_request and self_explanatory are already self-documented. The description adds only the loose phrase 'text / flags', which gestures at msgtext and self_explanatory but adds no format or constraint detail beyond the schema. Baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resource (change text/flags of an existing T100 message) plus the underlying repository object, so the intent is unambiguous. It does not name the sibling boundary with CreateMessageClassMessage / DeleteMessageClassMessage, though the 'upsert' note implicitly covers the create case.

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?

Gives a real routing rule: use it even when the message does not yet exist (upsert), so it supersedes the create path. It also states it runs outside batch mode, which tells the agent not to wrap it in BatchBegin/BatchEnd. No explicit sibling names or negative cases beyond that.

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