Skip to main content
Glama

xae_plc

Destructive

Controls TwinCAT PLC online states by logging in or out, starting or stopping, and running resets or downloads with project selection and confirmation tokens.

Instructions

PLC online actions: login | logout | start | stop | reset_cold | reset_origin | download. First the Automation Interface (ConsumeXml online commands on ' Project' — no active project needed; plc_project_path when there are several PLC projects), then the shell's DTE commands (names vary by build). download/reset_cold/reset_origin are destructive-class, the rest control-class.

Input Schema

NameRequiredDescriptionDefault
actionYes
confirm_tokenNo
plc_project_pathNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.8.12
    • addedInput schema / properties / plc_project_path
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Plc Project Path"
      +}
  2. First observedv0.6.0

TDQS

A3.6/5.0
Behavior4/5

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

Annotations give only a blanket destructiveHint=true, so the description adds real value by partitioning which actions are destructive (download/reset_cold/reset_origin) versus control-class, and by describing the AI-ConsumeXml-then-DTE fallback mechanism that affects execution. The one notable omission is any mention of confirm_token, which a destructive tool should flag.

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-loaded with the action list an agent needs first, then the mechanism and risk classification. It is compact, though the ConsumeXml/DTE implementation detail and 'names vary by build' are lower-value minutiae that compete with the more important confirm_token explanation that is missing.

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 prose, and the description covers the action set and project-path selection. However, for a destructive, non-idempotent multi-action tool with 0% schema coverage, the unexplained confirm_token and absent when-to-use guidance leave gaps an agent would need to close before invoking safely.

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?

With 0% schema description coverage the description must carry parameter meaning. It usefully explains plc_project_path ('when there are several PLC projects') and effectively enumerates the action values, but confirm_token is never explained despite being prominent for destructive operations, leaving one of three parameters undocumented in both schema and description.

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?

The description names the resource ('PLC online actions') and enumerates every action the tool exposes (login, logout, start, stop, reset_cold, reset_origin, download), which is essential since the action parameter has no enum in the schema. It is clear what the tool does, but it does not explicitly draw a boundary against plausible siblings like xae_restart_twincat, ads_plc_state, or xae_build.

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 action list and the 'destructive-class vs control-class' split signal that this is for controlling PLC runtime state. There is no explicit 'use this when ...' statement, no naming of an alternative tool, and no condition distinguishing it from xae_build/xae_deploy for the download action.

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