Predictive Maintenance MCP
About
Evidence-based vibration analysis and bearing fault diagnosis for AI assistants: FFT, envelope analysis, ISO 20816-3 severity, and diagnostic reports — processed locally, benchmarked openly on the public CWRU dataset.
Details
- Author
- lgdimaggio
- Categories
- Other
Jump to
Setup
Install Predictive Maintenance MCP in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/lgdimaggio/predictive-maintenance-mcp
Follow the installation instructions in the repository README, then restart your MCP client.
Give your AI assistant evidence-based vibration diagnostics — machinery fault detection, ISO-cited severity, and diagnostic reports built to support and accelerate expert decision-making.
Full diagnostic workflow: load signal → spectral analysis → fault detection → severity assessment → report generation
Get running in ~3 minutes.On Windows, one script wires everything into Claude Desktop — it installs the venv, pre-compiles dependencies, and writesclaude_desktop_config.jsonfor you (OneDrive / cloud-sync paths included):
git clone https://github.com/LGDiMaggio/predictive-maintenance-mcp.git cd predictive-maintenance-mcp .\setup_claude.ps1
"Load real_train/OuterRaceFault_1.csv and check if the bearing is healthy."
Find the full path touvx(which uvxon macOS/Linux,where uvxon Windows), then add to your client config —~/Library/Application Support/Claude/claude_desktop_config.json(macOS) or%APPDATA%\Claude\claude_desktop_config.json(Windows):
{ "mcpServers": { "predictive-maintenance": { "command": "/full/path/to/uvx", "args": ["predictive-maintenance-mcp"], "env": { "UV_LINK_MODE": "copy" } } } }
Why the full path?Claude Desktop launches servers with a minimalPATHthat often omits user-local tool directories (e.g.~/.local/bin). Using the full path touvxavoids a silent "command not found" failure. On Windows the typical path isC:\Users\<you>\.local\bin\uvx.exe.
More options:install from source·VS Code setup·Docker / HTTPS deployment·use with local LLMs (Ollama)
A blind, reproducible diagnostic-accuracy benchmark on the publicCWRU Bearing Data Centerdataset (12 kHz drive-end subset: 60 fault records + 4 normal baselines). Fault labels never reach the system under test — signals enter under opaque ids, a separate scorer is the only label reader, and blindness, checksum integrity, and determinism are enforced by CI-run guard tests, not prose. Results are stratified by the per-record diagnosability grades of the Smith & Randall (2015) reference study, so records that study found undiagnosable by any classical method are reported separately instead of inflating or deflating the headline.
On records the reference study grades clearly diagnosable (Y1+Y2, <!-- -->44<!-- --> records): characteristic fault frequency detected on <!-- -->44<!-- -->/<!-- -->44<!-- -->, correct fault ranked first on <!-- -->34<!-- -->/<!-- -->44<!-- --> (<!-- -->77.3<!-- -->%), and <!-- -->9<!-- -->/<!-- -->9<!-- --> on the textbook-signature (Y1) stratum. On the <!-- -->4<!-- --> healthy baselines, <!-- -->2<!-- --> records raised a false indication under the same criterion.
The numbers above are read from the committed, re-runnable artifact (results.json) and drift-guarded by CI: every value is bound to its key in the artifact, and a mismatch fails the build. Methodology, blind protocol, and honest-benchmarking notes:docs/benchmark-methodology.md. Reproduce with:
Point the AI at a vibration signal → get the evidence behind the fault — detected frequencies, matched fault patterns, ISO-cited severity — to support your call.
The AI doesn't guess — it calls37 specialized MCP endpoints(34 tools + 3 prompts) running locally on your machine. Every signal is referenced by a singlesignal_idhandle from load to report. Your data never leaves your infrastructure.
Full endpoint reference, grouped by category:Tool Catalog.
The project includes aplugin for Claude Codewith domain-specific skills that activate automatically during conversation.
/plugin marketplace add LGDiMaggio/predictive-maintenance-mcp /plugin install predictive-maintenance@predictive-maintenance-marketplace
The plugin adds8 skillsthat activate automatically based on context (bearing-diagnosis, gear-diagnosis, quick-screening, report-generation, anomaly-detection, signal-management, documentation-search, prognostics),2 agentsthat run multi-step diagnostic workflows end-to-end and hand you the evidence (diagnostic-pipeline, signal-explorer), and3 commandsfor quick entry points (/pm-diagnose,/pm-screen,/pm-report).
Full skill, agent, and command reference:Plugin README.
All analysis tools generateinteractive HTML reportsyou can open in any browser — pan, zoom, hover for details. Also supports structured Word (.docx) exports.
The project ships with20 real bearing vibration signalsfrom production machinery tests — ready to use out of the box: a training set (2 healthy baselines + 12 fault signals, inner and outer race) and a test set (1 healthy baseline + 5 fault signals).
Try:"Load real_train/OuterRaceFault_1.csv and diagnose the bearing fault."
Full dataset documentation:data/README.md
YOU (natural language) │ v LLM (Claude, GPT, Ollama...) understands intent, selects tools │ v ── Model Context Protocol ── ┌──────────────────────────────┐ │ Predictive Maintenance │ │ MCP Server │ │ │ │ Signal Analysis Reports │ │ Fault Detection ML │ │ Severity Rating RAG Docs │ └──────────────────────────────┘ │ v YOUR DATA (stays local) signals · manuals · models
The codebase follows amodular architectureorganized around the ISO 13374 Six-Block Diagnostic standard — signal acquisition, processing, diagnostics, prognostics, and decision support as separate sub-packages. Standards implemented: ISO 13374, ISO 20816-3, MIMOSA OSA-CBM. Module-level detail:Architecture guide.
- Privacy-first— raw vibration data never leaves your machine; only computed results flow to the LLM
- LLM-agnostic— works with Claude, ChatGPT, Microsoft Copilot Studio, or any MCP-compatible client. Use[Ollamafor fully air-gapped deployments
- Modular— use only the tools you need, extend with your own
85%+ test coverage, enforced as a CI minimum, across Windows, macOS, and Linux (Python 3.11 & 3.12) — the current measured figure is on the codecov badge above.
pytest # run all tests pytest --cov=src --cov-report=html # with coverage report
20+ test files covering signal analysis, fault detection, severity assessment, ML models, report generation, RAG search, and real bearing fault data validation.
…
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



