Acknowledge one or more alarms. Each alarm identifier must have the name of the configured alarm, and optionally an instanceID, which identifies one active instance of the configured alarm. If the instanceID is 0 or not provided, all instances of the given alarm will be acknowledged. If an alarm ...
AI agents use acknowledge-alarms to create or update resources in WinCC Unified MCP Server — usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your WinCC Unified MCP Server environment.
Acknowledging alarms in a SCADA/industrial control system is a Write operation — it modifies the state of alarms (from unacknowledged to acknowledged) in a reversible/stateful way.
From the tool's definition Acknowledge one or more alarms... all instances of the given alarm will be acknowledged
Documented attack patterns abuse exactly the kind of access acknowledge-alarms gives an agent:
PolicyLayer is an MCP gateway — it sits between your AI agents and WinCC Unified MCP Server, and nothing reaches the server without passing your rules. This is the rule we recommend for acknowledge-alarms:
{
"version": "1",
"default": "deny",
"tools": {
"acknowledge-alarms": {
"limits": [
{
"counter": "acknowledge-alarms_rate",
"window": "minute",
"max": 30,
"scope": "grant"
}
]
}
}
} acknowledge-alarms stays usable, but capped — an agent stuck in a loop can't make hundreds of changes a minute. Everything else on the server is denied unless you say otherwise.
Free to start. No card required.
Acknowledge one or more alarms. Each alarm identifier must have the name of the configured alarm, and optionally an instanceID, which identifies one active instance of the configured alarm. If the instanceID is 0 or not provided, all instances of the given alarm will be acknowledged. If an alarm requires single acknowledgement, only one item can be provided at a time, otherwise the request will be rejected. Errors: 0 - Success 2 - Cannot resolve provided name 304 - Invalid object state 305 - The alarm cannot be read / acknowledged / reset in current state x - Alarm instance does not exist (where x is the instanceID or an indicator for the alarm name if no instanceID was provided). It is categorised as a Write tool in the WinCC Unified MCP Server MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
Register the WinCC Unified MCP Server MCP server in PolicyLayer and add a rule for acknowledge-alarms: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches WinCC Unified MCP Server. Nothing to install.
acknowledge-alarms is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the acknowledge-alarms rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for acknowledge-alarms. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
acknowledge-alarms is provided by the WinCC Unified MCP Server MCP server (vogler75/winccua-mcp-server). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Start from WinCC Unified MCP Server, add the rest of your stack, and see everything your agents can call. Then put policy on all of it.
Free to start. No card required.
9 WinCC Unified MCP Server tools catalogued and risk-classified — across an index of 43,000+ MCP servers.