Skip to main content
Glama
LGDiMaggio

Predictive Maintenance MCP Server

by LGDiMaggio

compute_power_spectral_density

Analyze vibration signals by computing power spectral density using the Welch method to identify frequency components for machinery fault detection.

Instructions

Compute Power Spectral Density (Welch method) for a stored signal.

    Requires signal loaded via load_signal() first.

    Args:
        signal_id: ID of the stored signal.
        nperseg: Samples per FFT segment (default 256).
        noverlap: Overlap between segments (default 128).
        window: Window function (default 'hann').
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
signal_idYes
npersegNo
noverlapNo
windowNohann

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
signal_idYesSignal identifier used
num_samplesYesNumber of samples analyzed
sampling_rateYesSampling rate (Hz)
npersegYesSamples per segment
noverlapYesOverlap between segments
windowYesWindow function used
top_peaksYesTop spectral peaks by power
total_powerYesTotal integrated power
freq_range_hzYes[min_freq, max_freq]
frequency_resolutionYesFrequency resolution (Hz)
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the Welch method but omits critical details: what the tool returns (e.g., frequency and power arrays), error handling if signal_id invalid, and whether it modifies any state. This lack of transparency for a computational tool is a significant gap.

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

Conciseness4/5

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

The description is concise: a one-line summary followed by a clear parameter list. No extraneous information. However, the parameter list could be more compact; the current structure is adequate but not maximally concise. Still, it earns its place with minimal waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters, no annotations, and an output schema (not described), the description covers the prerequisite and parameters adequately but lacks explanation of the output format or behavior on error. For a signal processing tool, completeness is moderate; the output schema may help, but the agent would benefit from knowing the shape or units of the PSD result.

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 explain parameters. It does so: signal_id is 'ID of the stored signal', nperseg is 'Samples per FFT segment', noverlap is 'Overlap between segments', and window is 'Window function'. Defaults are also stated. This adds substantial meaning beyond the schema's titles and defaults.

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 clearly states 'Compute Power Spectral Density (Welch method) for a stored signal.' It specifies the exact algorithm (Welch) and the resource (stored signal). This distinguishes it from sibling tools like compute_envelope_spectrum_tool or compute_spectrogram_stft, which compute different spectral quantities.

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?

The description explicitly states 'Requires signal loaded via load_signal() first.' This provides clear usage context. It does not mention when not to use or compare directly with alternatives, but the prerequisite alone gives strong guidance. Missing explicit exclusions keeps it from a 5.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/LGDiMaggio/predictive-maintenance-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server