Motor Current Signature Analysis

Provides an end-to-end MCSA diagnostic workflow from motor current signals, including preprocessing, spectral analysis, fault detection, and step-by-step diagnostics.
  • python

0

GitHub Stars

python

Language

4 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "lgdimaggio-mcp-motor-current-signature-analysis": {
      "command": "uvx",
      "args": [
        "mcp-server-mcsa"
      ]
    }
  }
}

You can empower your MCP-compatible assistant to perform comprehensive motor current signature analysis (MCSA) for predictive maintenance. This server ingests motor current signals from common file formats, computes fault frequencies, and delivers automated diagnoses with severity levels, enabling proactive maintenance decisions without invasive testing.

How to use

You interact with the MCSA MCP server through an MCP client. Start the server using one of the supported local runtimes, then issue natural-language prompts to load signals, compute motor parameters, analyze spectra, and detect faults. You can run the full diagnostic pipeline in a single step or perform step-by-step analyses to inspect intermediate results such as the spectrum, fault frequencies, and envelope analyses.

How to install

# Prerequisites
# Ensure Python is installed
# For the Native Python route

# Install the MCP server from PyPI
pip install mcp-server-mcsa

# Or install from source
git clone https://github.com/LGDiMaggio/mcp-motor-current-signature-analysis.git
cd mcp-motor-current-signature-analysis
pip install -e .

# Alternative runtime using uvx
uvx mcp-server-mcsa

Configuration and usage patterns

Configure your MCP client to connect to the available MCP server instances. The project provides multiple runtime options and prompts for initiating a diagnostic workflow. You can run one of the following commands to start the server locally and connect your client.

Available tools and workflows

The server exposes a set of structured tools to perform each stage of the MCSA workflow. You can load signals, pre-process data, compute spectra, detect faults, and generate full diagnostics.

Example MCP client configurations

{
  "mcpServers": {
    "mcsa": {
      "command": "uvx",
      "args": ["mcp-server-mcsa"]
    }
  }
}
{
  "mcpServers": {
    "mcsa": {
      "command": "python",
      "args": ["-m", "mcp_server_mcsa"]
    }
  }
}

Examples of common operations

Load a measured signal from a CSV, WAV, or NPY file, then run a full diagnostic pipeline to obtain a JSON report with severity classifications and recommendations.

Supported file formats

The server accepts CSV, TSV, WAV, and NumPy NPY files. The content can be provided as a file path or loaded directly into memory for in-session analysis.

Bearing and fault analysis basics

You can compute bearing defect frequencies (BPFO, BPFI, BSF, FTF) and fault-related sidebands in the current spectrum, as well as envelope spectra for non-synchronous mechanical faults.

Notes on interpretation

Severity thresholds are provided to classify health status from the spectrum. Use your baseline measurements to tailor thresholds for your specific motor and operating conditions.

Troubleshooting

If you encounter issues starting the server, verify you are using a compatible Python environment, ensure dependencies are installed, and confirm the command and arguments match one of the supported runtime configurations shown above.

Development and testing

Run tests to validate the MCSA workflow and ensure compatibility with your MCP client. Use the project’s test suite to verify signal processing, fault detection, and reporting.

License and contribution

This MCP server is released under the MIT license. Contributions are welcome, following standard open-source collaboration practices.

Available tools

inspect_signal_file

Inspect a signal file format and metadata without loading

load_signal_from_file

Load a current signal from CSV / WAV / NPY file

calculate_motor_params

Compute slip, sync speed, rotor frequency from motor data

compute_fault_frequencies

Calculate expected fault frequencies for common fault types

compute_bearing_frequencies

Calculate BPFO, BPFI, BSF, FTF from bearing geometry

preprocess_signal

DC removal, normalization, windowing, and filtering pipeline

compute_spectrum

Single-sided FFT amplitude spectrum

compute_power_spectral_density

Welch PSD estimation

find_spectrum_peaks

Detect and characterize peaks in a spectrum

detect_broken_rotor_bars

BRB fault index with severity classification

detect_eccentricity

Air-gap eccentricity detection via sidebands

detect_stator_faults

Stator inter-turn fault detection from current spectrum

detect_bearing_faults

Bearing fault detection from current spectrum

compute_envelope_spectrum

Hilbert envelope spectrum for modulation analysis

compute_band_energy

Integrated spectral energy in a frequency band

compute_time_frequency

STFT analysis with optional frequency tracking

generate_test_current_signal

Synthetic motor current with configurable faults

run_full_diagnosis

Complete MCSA diagnostic pipeline from signal array

diagnose_from_file

Complete MCSA diagnostic pipeline directly from file

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational