Time Series Insight Tools (39 tools)
These are the 39 tools the Time Series Insight server exposes over MCP (as of 2026.10 — up from 33 in 2026.09, with six AI discovery and production analytics tools added). In chat they're prefixed with insight_
and called like insight_analyze_asset.
34 are on at first (2026.10 re-release (2026-10-20), MCP Gateway policy). Four come in disabled —
forecast_order_completion · autonomy_status · get_oee_losses · get_spc_chart — and the write tool trigger_feature_pipeline
cannot be enabled. The place to turn them on and off is AI Admin Console › MCP Gateway › Tools → MCP Gateway
- Even with this many on, the model does not receive them all for every question — the gateway's tool search picks up to 20 that fit the question and loads them → MCP Tool Map
- New tools added to Time Series Insight come in disabled. Values an administrator has changed once are not overwritten.
- Up to re-release 8 the copilot held the on/off values and only a few such as
get_attention_rankingwere on. Those values are not carried over.
Choosing by what you want to ask
| What you want to ask | Tool |
|---|---|
| Is this equipment OK right now | analyze_asset · get_asset_health |
| Why is it abnormal | explain_asset_anomaly · analyze_alarm_correlation |
| Has this happened before | find_similar_anomalies · search_pattern |
| Is a failure brewing | check_failure_precursor · forecast_* |
| Do other equipment show the same thing | find_fleet_outlier · find_similar_assets |
| What does this tag measure | get_asset_profile · get_asset_tag_relations |
| Where should I start looking today | get_attention_ranking · list_findings |
| Will this order finish on time · Why is OEE low | forecast_order_completion · get_oee_losses · get_spc_chart |
| What has the AI changed lately | autonomy_status · list_findings |
Anomaly Detection · Forecasting — paired by target
detect_* asks is it abnormal right now, forecast_* asks what will happen next. There
are six targets, each with its own pair.
| Target | Anomaly Detection | Forecast | What it looks at |
|---|---|---|---|
| Equipment sensors | detect_asset_anomaly | forecast_asset | Actual measurements like temperature, pressure, vibration |
| System resources | detect_system_anomaly | forecast_system | CPU · memory · disk |
| OEE | detect_oee_anomaly | forecast_oee | Availability · performance · quality |
| RAM (reliability) | detect_ram_anomaly | forecast_ram | MTBF · MTTR · failure rate |
| EMS (energy) | detect_ems_anomaly | forecast_ems | Power consumption · carbon emissions |
| Production (work orders) | detect_order_anomaly | forecast_order | Order-based OEE/RAM/EMS |
target_columns)If you don't specify a target tag, detect_asset_anomaly · forecast_asset find the tags attached to the
equipment on their own and run against those. Only specify one if you want a particular tag.
The underlying models are IBM Granite TSPulse for anomaly detection and Granite-TTM R3 for forecasting → AI Models
The score from detect_asset_anomaly is not normalized to 0–1 per call; it's measured against the
segment immediately preceding the analysis window as "how many times the usual fluctuation did this deviate by" (robust z-score). If threshold is omitted it defaults to
5.0. 🔴 Setting 0 doesn't make it "automatic" — it counts anything even slightly above the baseline median as abnormal.
Domain-side scores like OEE · RAM · EMS detect_* are still normalized to 0–1 per call — the
threshold of the two use different scales.
| What | Response |
|---|---|
| Insufficient data | Falls back to simple extrapolation instead of TTM, returns 200 · model_used: "NAIVE" — columns that couldn't be forecast go into dropped_columns, and if none succeed, 422 |
| No target · bad input | 404 · 422 |
| Can't reach inference server | 503 + Retry-After |
| Can't reach metadata store (PostgreSQL) | 503 · upstream: "postgres_unavailable" |
| Anything else (config error, weight load failure, code defect) | 500 — not masked by simple extrapolation |
If you requested a confidence interval and it didn't come back, the response's bounds_reason explains why →
Time Series Insight
Comparing against the past — "Has this happened before"
These four are at the core of Time Series Insight. They don't look at values — they compare the shape of the waveform.
| Tool | What it does |
|---|---|
find_similar_anomalies | Finds past anomalies resembling the current waveform (TSPulse embedding nearest neighbor) |
search_pattern | Uses the waveform up to a specified time as a window and finds past segments with the same shape |
check_failure_precursor | Compares the current waveform against a collection of waveforms just before ERROR alarms to produce a risk score |
find_fleet_outlier | Compares equipment of the same kind using the same channels to find the one standing out alone |
A threshold only checks "did it cross the line." These four look at the shape before the line is crossed — if the fluctuation that always preceded a failure shows up again, it's flagged even if the value itself is still within normal range.
Looking at one piece of equipment comprehensively
| Tool | What it does |
|---|---|
analyze_asset | Sees everything at once — health score · sensors · status · alarms · OEE/RAM/EMS · root-cause hints |
get_asset_health | 0–100 health index combining sensors + OEE + RAM + EMS + alarms |
explain_asset_anomaly | Estimates root cause by tying together anomaly-flagged tags, alarms, and status changes |
get_asset_context | A daily comprehensive analysis summary for that equipment (formatted for an LLM to read) |
find_similar_assets | Finds similar equipment by embedding cosine similarity |
list_asset_tags | List of tags attached to the equipment |
When you're not sure where to start, start with analyze_asset alone. Use the rest to narrow
down from its results.
How to read the health index — what changed in 2026.10 Re-release 3
The score from get_asset_health is «100 − deductions». In this release, the rules for deductions and
pending judgments changed.
-
Downtime deductions only count «unplanned» downtime. SETUP, planned stops, planned stops/holidays from the calendar, and time outside shifts are not deducted. The response's
idle.basisstates how it was counted.idle.basisMeaning unplannedCounted as unplanned downtime all_plannedAll downtime was planned — no deduction heldStatus was observed too recently to judge — withheld, no deduction plan_partialCouldn't read the calendar, or this equipment's shift window isn't in the calendar — doesn't assume 24-hour operation, only subtracts planned stops it could read plan_unknownNo status source — fell back to the old method (operating ratio) no_dataNo data — no deduction -
Areas with short history are «withheld», not scored 0. Sensor areas without a calibrated tag yet, and OEE · RAM · EMS areas with short history, are excluded from the score and recorded in
held_domainswith a reason (insufficient_data). If a grade was produced from the remaining areas, it'sgrade_provisional: true, and the chat answer includes "Held domains … not judged", "Grade is PROVISIONAL" — read it as a provisional grade. -
String tags (labels like cause codes · stop reasons) are classified as
categoricaland excluded from anomaly scoring · forecasting · statistics. The reason for exclusion is recorded in the response — it's not "no value came in."get_asset_profilealso shows them as "category (string code — not a numeric analysis target)." -
Segments in the feature store with fewer than 30 points are not scored for anomalies and are marked
insufficient_data(first segment of a new tag · collection gap). Not a score of 0 (normal).
What tags measure — profiling
| Tool | What it does |
|---|---|
get_asset_profile | What each tag measures · its normal range · confidence level |
get_asset_tag_relations | Tag pairs that move together within the equipment, plus lead–lag (causal candidates) |
Field tag names are often as hard to read as TIC_1023_PV. Because get_asset_profile decodes them
into "what value this measures," the AI is less likely to pick the wrong tag when answering.
Viewing alarms statistically
| Tool | What it does |
|---|---|
get_alarm_stats | Frequency · priority distribution · top alarm settings · top tags |
analyze_alarm_duration | Duration analysis — degradation detection, trend in MTTA (mean time to acknowledge) |
analyze_alarm_correlation | Correlation between alarms and sensor tags |
detect_alarm_anomaly | Anomalies in alarm occurrence patterns by time of day |
forecast_alarm | Forecasts future patterns from alarm frequency trends |
AI Discoveries and Watchlist — added in 2026.10
Tools that read what the AI has found on its own. They don't compute anything new — they return discoveries, rankings, and states that Time Series Insight has already pre-built. Same material as the admin console's Time Series Insight → AI Autonomy screen → AI Admin Console
| Tool | What it does | Default |
|---|---|---|
get_attention_ranking | Per-site "Equipment to check first today" ranking — an attention score (0–100) with three reasons, computed from open discoveries, health score, and 24-hour trend, plus rank change vs. yesterday | On |
list_findings | List of discoveries the AI has found — equipment anomalies · order targets missed · data interruptions · data quality · cascading stops · failure risk · AI autonomy changes, etc. Severity · urgency · evidence · status (open · acked · closed) | On |
autonomy_status | Current state of AI self-improvement (normal baselines, anomaly scorers) — mode · version in use · shadow · candidate · paused | Off |
list_findings does not return «shadow» discoveries that haven't been approved by a human. Only
discoveries that have been notified to the field go to questions — if they were merely flagged, the AI could drop the flag while summarizing and present an unvalidated judgment as fact.
From 2026.10 Re-release 3 (rule version order_shortfall-3), «order target missed» discoveries are held and not opened in two cases:
- When an order has just started — elapsed time under 60 minutes (not exceeding half the planned duration) (
held:early) - When the quantity that should have been produced by now, even on schedule, is less than 1 — as with orders where quantity can't measure progress, like one unit taking hours to make (
held:no_progress_evidence)
If an already-open discovery meets these conditions, it is closed with out_of_scope. Large orders stopped from the start are not held and remain open.
Production Analytics
| Tool | What it does | Default |
|---|---|---|
forecast_order_completion | Whether an in-progress work order will hit its target quantity by its planned end — projected final good count (P10–P90) · probability of reaching target · estimated completion time · shortfall quantity | Off |
get_oee_losses | Why OEE is low — availability · performance · quality loss time, the six big losses, stop causes (including short stops), comparison against platform OEE. Default last 24 hours (up to 744 hours) | Off |
get_spc_chart | Defect rate control chart for equipment/products (p-chart, Laney p′ if overdispersed) — center line · control limits · Western Electric signals | Off |
forecast_order and forecast_order_completion are differentforecast_order covers the OEE trend across upcoming orders, while forecast_order_completion covers
whether the one order running right now will hit its target. "How many units short is this order" is the latter.
Feature Store · Status
| Tool | What it does |
|---|---|
get_asset_features | Health score · anomaly score · alarms · status · production metrics |
get_feature_status | Scheduler job list · last run time · backfill status |
health_check | Status of the server and dependent networks — event store (Cassandra) · metadata store (PostgreSQL) · inference server · embeddings |
trigger_feature_pipeline | Manually triggering a pipeline — 🔴 blocked by policy as a write operation, cannot be enabled |
The equipment-comprehensive and similarity tools use values pre-computed in the feature
store. If the scheduler hasn't run, the tool connects fine but returns an empty answer — check
get_feature_status starting from the last run time.
Related Documents
- Using Time Series Insight — how to use it from the screen
- MCP Tool Map — all six MCP servers
- AI Models — TSPulse · TTM · Aura