Skip to main content
Glama

Statistical Process Control & Anomaly Alerts

Control Charts, Run Rules & Shift Detection (SPC)

process_monitor
Read-only

Statistical process control for any metric stream. From rows of metric, time and value (or count and sample size for rates, or a sample id for subgroups, or a wide export with one column per metric) it returns, per metric: the fitting control chart (I-MR, X-bar R / S, p, np, u, c; Laney p'/u' for large samples; hourly / daily means for high-frequency data); limits from a stable baseline with out-of-limit baseline points set aside; Western Electric (default) or Nelson run-rule signals with plain explanations and better / worse verdicts; CUSUM and EWMA for small sustained shifts with change point and new level; incidents (alerts merged so one problem is one alert); spread chart; capability (Cp, Cpk, Pp, Ppk) against spec / SLA limits; autocorrelation check; limits to store for continuous watching. Decision cards first. Up to 20,000 rows; larger: process_monitor_get_engine.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "process_monitor"
  }
}

Input Schema

NameRequiredDescriptionDefault
lslNoLower spec / SLA limit (all metrics; per metric via metrics).
uslNoUpper spec / SLA limit (all metrics; per metric via metrics).
chartNoauto
laneyNoauto
rulesNowestern_electric
ewma_LNo
limitsNoStored limits from an earlier run (metrics[].limits_to_store): metric, chart, center, sigma, laney_factor; or center + ucl + lcl.
seriesNoLong: metric, timestamp, value (or count + size, or sample id). Wide: timestamp + one numeric column per metric.
cusum_hNo
cusum_kNo
metricsNoPer-metric settings: metric, chart, direction, lsl, usl, baseline_end, baseline_points, subgroup_by.
directionNo
ewma_lambdaNo
ewma_limitsNoexact
max_metricsNo
subgroup_byNonone
baseline_endNoLast date of the baseline (YYYY-MM-DD).
incident_gapNo
sigma_methodNoauto
recent_pointsNo
clean_baselineNo
laney_min_sizeNo
baseline_pointsNo
laney_thresholdNo
max_points_listedNo
autocorrelation_thresholdNo

Output Schema

NameRequiredDescriptionDefault
alertsNo
statusYes1 = ok, 0 = nothing could be checked
messageNo
metricsNo
summaryNo
metadataYes
decisionsYesPlain-language cards, priority order. Relay these first.
assumptionsNo
data_quality_reportNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/non-destructive/non-open-world, so the description focuses on the right extras: output ordering ("Decision cards first"), baseline stabilization with out-of-limit points set aside, alert merging into incidents, and a hard row limit. It does not state the emitted limits are meant for re-passing via `limits` (that link is only in the schema), which keeps it at 4.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Every clause carries information, but it is delivered as one enormous parenthetical-laden sentence that is hard to scan mid-way. The size limit and sibling routing are correctly placed last, but overall structure is a wall of text rather than front-loaded sections.

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?

For a 26-param analysis engine with an output schema, the description covers purpose, accepted input shapes, default rule family, and capacity limits well enough to call correctly on the common path. Remaining gap is the undocumented tuning parameters, which an agent would have to guess or leave at defaults.

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 only 23% across 26 params, so the description carries extra burden. It does clarify the crucial input shapes for `series` (long vs wide, count+size for rates, sample id for subgroups) and names the chart/rule families, but leaves many tunables unexplained (cusum_k/h, ewma_L/lambda, incident_gap, sigma_method, recent_points, clean_baseline, laney_threshold).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific domain verb+resource ("Statistical process control for any metric stream") and enumerates exactly what is computed per metric (chart types, limits, run rules, CUSUM/EWMA, capability, incidents). The final clause names the sibling tool process_monitor_get_engine and the condition separating it, so the two tools are unambiguously distinguishable.

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?

Clear context for when to use (any metric stream, with an explicit 20,000-row boundary routing larger inputs to process_monitor_get_engine). No explicit "when not to use" or prerequisite statement, which keeps it off a 5.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.