Skip to main content
Glama
lucksmiler-A1

Predictive Maintenance MCP Server

clear_signals

Remove a specific vibration signal or clear all signals from the in-memory repository. The asset ledger on disk remains untouched.

Instructions

Remove one signal — or all signals — from the in-memory repository.

Memory only; the asset ledger on disk is untouched. A measurement
recorded at load time stays in its asset's history, and re-loading the
file later is recognized as the same measurement.

Args:
    ctx: MCP context. Unused — see this module's docstring on logging.
    signal_id: ID to remove; None (default) clears the whole cache.

Returns:
    Dict with cleared_count, plus signal_id and status ('removed' or
    'not_found') for single-signal calls.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
signal_idNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.13.0

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and largely meets it: it discloses the memory-vs-disk boundary, that a load-time measurement persists in asset history, and the return shape (cleared_count, signal_id, status). It does not state whether the in-memory removal is irreversible for the session or note any confirmation/authorization requirements, leaving a gap for a mutating tool.

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?

The core behavior is well front-loaded in the first two paragraphs, but the Args/Returns docstring boilerplate is wasteful: the ctx entry references an external module docstring that an agent cannot see, and the Returns block duplicates the output schema that already exists. Roughly a third of the text does not earn its place.

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?

Given a single-parameter tool with an output schema present, the description is nearly complete on behavior, side effects, and persistence semantics. The redundant Returns section and the phantom ctx parameter are the only meaningful blemishes, and neither blocks correct invocation.

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 compensate, and it does: signal_id is explained as the ID to remove with None (default) clearing the whole cache, which fully resolves the anyOf string/null ambiguity. It is docked slightly for documenting a 'ctx' argument that does not exist in the input schema, which adds confusion rather than clarity.

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?

The description opens with a specific verb and resource ('Remove one signal — or all signals — from the in-memory repository') and pins the scope to the in-memory cache, which cleanly separates it from disk-oriented siblings like load_signal and the list_* tools. An agent can identify the operation without opening the schema.

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?

It gives clear context for when this applies ('Memory only; the asset ledger on disk is untouched') and explains the reload-recognition behavior, which helps an agent decide whether clearing is safe. It stops short of explicitly naming alternatives or when-not-to-use conditions, so it lands below the top tier.

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