Skip to main content
Glama
TIA Portal MCP Server

TIA Portal MCP Server

by BJM1122

tia_edit_hmi_text

Read-only

Replace the text value of a uniquely named classic HMI object in one existing language while preserving other languages, events, bindings, and unknown XML; optionally target Text, TextOn, or TextOff.

Instructions

Replace the text of one uniquely named classic HMI object in one existing language. Supports Text, TextOn or TextOff. Preserves other languages, events, bindings and unknown XML; replaces formatting only inside the selected text value.

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": {
      "originalXml": "<originalXml>",
      "baselineSha256": "<baselineSha256>",
      "objectName": "<objectName>",
      "culture": "<culture>",
      "text": "<text>"
    },
    "name": "tia_edit_hmi_text"
  }
}

Input Schema

NameRequiredDescriptionDefault
textYes
cultureYes
objectNameYes
compositionNoText
originalXmlYes
baselineSha256Yes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.29.1

TDQS

B3.4/5.0
Behavior3/5

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

Annotations declare only readOnlyHint=true, which is a thin safety profile for a tool whose verb is "replace"; the description does real work by promising that other languages, events, bindings, and unknown XML are preserved and that reformatting is confined to the selected text value. However, it never says what is returned, how the baselineSha256 guard behaves on mismatch, or what happens when the name is not unique — the failure modes an agent most needs.

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?

Two dense sentences with the scope constraint front-loaded, and the second sentence's clauses each carry distinct preservation guarantees rather than filler. It is slightly compressed — "classic HMI object" and "composition" are assumed knowledge — but no sentence is wasted.

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 six-parameter edit operation with no output schema and minimal annotations, the definition covers the mutation semantics well but leaves the two input-contract parameters (originalXml size/shape expectations, baselineSha256) and the return value undocumented. An agent knows what the tool does to the document but not fully how to construct a valid call or interpret the result.

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 carry the load. It adds meaning for four of six parameters (objectName via "uniquely named", culture via "existing language", text via "replace the text", composition via "Supports Text, TextOn or TextOff"), but leaves originalXml and baselineSha256 completely unexplained — notably the hash, whose purpose (stale-write protection) is opaque without narrative.

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?

"Replace the text of one uniquely named classic HMI object in one existing language" gives a specific verb (replace), a bounded resource (single named object), and scope (one language). The word "classic" implicitly separates it from the unified-HMI siblings, but no sibling is named explicitly, so the differentiation is inferential rather than stated.

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?

Usage is only implied: the object must already exist and the language must already exist, which rules out create flows. There is no explicit "use this instead of tia_edit_hmi_native / tia_apply_unified_hmi_edit" routing and no stated when-not conditions, so an agent must infer selection from the classic/unified wording.

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