Skip to main content
Glama

ads_watch

Read-only

Poll TwinCAT ADS symbols at set intervals and log value changes to measure signal timing, such as pulse durations or valve open times.

Instructions

Sample symbols for duration_ms every interval_ms (polling trace). change_only keeps only rows where a value changed. Caps: 60 s, ≥10 ms, 5000 rows. Use for timing questions: 'does bDone pulse?', 'how long is the valve open?'.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
namesYes
change_onlyNo
duration_msNo
interval_msNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and non-destructive, so the safety profile is covered; the description adds real behavioral content beyond them: the change_only filtering semantics and hard caps (60 s, ≥10 ms, 5000 rows). It does not say whether the call blocks for the full duration_ms, which is the main remaining unknown for a polling 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 compact sentences, front-loaded with the sampling mechanism, then the filter flag, then the caps, then the use cases. Nothing is redundant and no sentence is filler.

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?

An output schema exists, so return structure needn't be explained; the description complements it with caps and filter semantics. Blocking behavior and error/limit-exceeded handling are the only notable gaps for an agent deciding to call it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/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 — and it does: change_only is defined, duration_ms and interval_ms get constraints, and names is implied by 'Sample symbols'. Units come from the schema's *_ms naming, and default values (2000 ms, 50 ms, change_only=true) are left to the schema.

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 mechanism: 'Sample symbols for duration_ms every interval_ms (polling trace)', which cleanly separates it from single-shot siblings like ads_read and ads_read_many. The two quoted timing questions ('does bDone pulse?', 'how long is the valve open?') further pin down its role, though no sibling is named explicitly.

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 clear context for when to reach for it — timing/pulse-width questions rather than point-in-time value reads. It stops short of stating when NOT to use it or naming alternatives such as ads_read or ads_wait_until for a single value or a one-shot wait.

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