Token导航 LogoToken导航TokenDH.com
MCP Motor Current Signature Analysis logo
运维云端stdio官方级别未说明来源级核验

MCP Motor Current Signature Analysis

MCP Server

一个基于模型上下文协议(MCP)的服务器,用于通过定子电流信号进行非侵入式频谱分析和电机故障检测,适用于预测性维护和自动化状态监测。

工具数

21

提示词数

0

GitHub Stars

6

资源数

0
PythonClaude云端部署Claude DesktopClaudeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

LGDiMaggio

提供方

LGDiMaggio

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uvx mcp-server-mcsa --help

详细介绍

mcp服务器mcsa

![License: MIT](https://opensource.org/licenses/MIT) ![Python 3.10+](https://www.python.org/downloads/) ![MCP](https://modelcontextprotocol.io)

A. 模型上下文协议(MCP)服务器 为了 电机电流特征分析(MCSA) --利用定子电流信号对电动机进行无创频谱分析和故障检测。

mcp服务器mcsa 将任何LLM变成预测性维护专家。通过整合先进技术,如 快速傅里叶变换(FFT)包络分析,系统可以 *听* 通过自然语言自动识别电机的电气特征,并自动识别机械和电气异常。

MCSA是一种行业标准的状态监测技术,它分析定子电流的谐波含量,以检测电动机中的转子、定子、轴承和气隙故障,而不需要振动传感器、停机时间或物理访问机器。该服务器将完整的MCSA诊断工作流程带到任何兼容MCP的AI助手(Claude Desktop、VS Code Copilot等),实现交互式专家分析和自动状态监测管道。

特性

  • 真实信号加载 --从CSV、TSV、WAV和NumPy读取测量数据 .npy 文件
  • 电机参数计算 --铭牌数据中的转差、同步速度、转子频率
  • 故障频率计算 --转子断条、偏心、定子故障、混合偏心
  • 轴承缺陷频率 --轴承几何形状的BPFO、BPFI、BSF、FTF
  • 信号预处理 --直流去除、归一化、开窗、带通/陷波滤波
  • 光谱分析 --FFT频谱、Welch PSD、频谱峰值检测
  • 包络分析 --机械/轴承故障的Hilbert变换解调
  • 时频分析 --非平稳条件下具有频率跟踪的短时傅里叶变换
  • 故障检测 --自动严重程度分类(健康/初期/中度/重度)
  • 一次性诊断 --来自信号阵列或直接来自文件的完整管道
  • 测试信号生成 --用于演示和基准测试的具有可配置故障注入的合成信号
  • 持久数据存储 --信号和频谱保存到 ~/.mcsa_data/ 压缩后 .npz 文件夹;由短ID引用(sig_xxxx, spec_xxxx)将大型数组排除在聊天环境之外;数据在服务器重启后仍然存在

工具(21)

工具说明
inspect_signal_file在不加载的情况下检查信号文件格式和元数据
load_signal_from_file从CSV/WAV/NPY文件加载电流信号→ 回报 signal_id
calculate_motor_params根据电机数据计算转差、同步速度、转子频率
compute_fault_frequencies计算所有常见故障类型的预期故障频率
compute_bearing_frequencies根据轴承几何形状计算BPFO、BPFI、BSF、FTF
preprocess_signal直流去除、滤波、归一化、开窗管道→ 返回新 signal_id
compute_spectrum单侧FFT振幅谱→ 回报 spectrum_id
compute_power_spectral_densityWelch PSD估计→ 回报 spectrum_id
find_spectrum_peaks检测并表征光谱中的峰值
detect_broken_rotor_bars带严重性分类的BRB故障指数
detect_eccentricity通过边带检测气隙偏心
detect_stator_faults定子匝间短路检测
detect_bearing_faults从电流频谱检测轴承缺陷
compute_envelope_spectrum调制分析的Hilbert包络谱
compute_band_energy频带内的积分频谱能量
compute_time_frequency带可选频率跟踪的短时傅里叶变换分析
generate_test_current_signal带可选故障的合成电机电流→ 回报 signal_id
run_full_diagnosis从信号或 signal_id
diagnose_from_file直接从文件中完成MCSA诊断流程
list_stored_data列出磁盘上保存的所有信号和光谱
clear_stored_data从磁盘中删除一个或所有存储的项目

资源

URI描述
mcsa://fault-signatures故障特征、频率和经验阈值参考表

提示

提示描述
analyze_motor_currentMCSA分析的分步指导工作流程

安装和设置

步骤1--安装uv(一次性,如果你没有的话)

紫外线 是推荐的Python包管理器。它在一个工具中处理所有内容(Python、包、虚拟环境),并在整个MCP生态系统中使用。

视窗 (PowerShell):

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

macOS/Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh
安装后, 重新启动终端 所以 uv / uvx 命令可用。

第2步——验证它是否有效

uvx mcp-server-mcsa --help

您应该看到帮助文本。 就这样 --没有 pip install 需要。 uvx 在隔离环境中自动下载并运行该包。

步骤3--添加到MCP客户端

选择您的客户端并在下面添加配置。 不需要其他步骤。

克劳德桌面

打开配置文件:

  • 视窗: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

添加 mcsa 里面 mcpServers object(如果文件不存在,则创建该文件):

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

然后 重新启动克劳德桌面.

VS代码(复制/继续)

创建(或编辑) .vscode/mcp.json 在您的工作空间中:

{
  "servers": {
    "mcsa": {
      "command": "uvx",
      "args": ["mcp-server-mcsa"]
    }
  }
}

光标

首选 设置→ MCP服务器→ 添加新服务器:

  • 类型: command
  • 命令: uvx mcp-server-mcsa

第4步——测试

在您的MCP客户端中,尝试:

生成转子条断裂故障的测试信号,并进行全面诊断。电机:4极,50 Hz,1470 RPM

如果服务器返回诊断报告,则一切就绪。

______________________________________________________________________

Alternative: install with pip (not recommended — see note)

pip install mcp-server-mcsa

然后使用以下配置您的客户端:

{
  "mcpServers": {
    "mcsa": {
      "command": "python",
      "args": ["-m", "mcp_server_mcsa"]
    }
  }
}
⚠️ Windows上的常见问题:如果您从Microsoft Store安装了Python mcp-server-mcsa 命令可能不在您的PATH中,导致“服务器断开连接”错误。在这种情况下,使用以下命令查找Python路径 python -c "import sys; print(sys.executable)" 并在配置中使用完整路径: ``json { "mcpServers": { "mcsa": { "command": "C:/Users/YOU/AppData/Local/.../python.exe", "args": ["-m", "mcp_server_mcsa"] } } } ` 使用 uvx` 完全避免了这个问题。

Alternative: install from source (for development)

git clone https://github.com/LGDiMaggio/mcp-motor-current-signature-analysis.git
cd mcp-motor-current-signature-analysis
uv sync --dev

配置客户端以指向本地仓库:

{
  "mcpServers": {
    "mcsa": {
      "command": "uv",
      "args": ["--directory", "/absolute/path/to/mcp-motor-current-signature-analysis", "run", "mcp-server-mcsa"]
    }
  }
}

运行测试:

uv run pytest

使用MCP检查器进行调试:

uv run mcp dev src/mcp_server_mcsa/server.py

故障排除

问题修复
Claude Desktop上的“服务器已断开连接”请查看以下日志 %APPDATA%\Claude\logs\ (Windows)或 ~/Library/Logs/Claude/ (macOS)。最常见的原因:找不到配置中的命令。使用 uvx 以避免PATH问题。
uvx: command not found安装uv后重新启动终端。在Windows上,您可能需要关闭并重新打开PowerShell。
mcp-server-mcsa: command not found (pip)脚本未添加到PATH中。使用 python -m mcp_server_mcsa 相反,或切换到 uvx.
服务器已启动,但工具未显示请确保在编辑配置后重新启动了MCP客户端。

数据存储

信号和频谱 持久化到磁盘 压缩后 .npz 文件 在 ~/.mcsa_data/ (可通过配置 MCSA_DATA_DIR 环境 变量)。这意味着:

  • 大型数组永远不会进入聊天 --只有短ID(sig_xxxx,

spec_xxxx)并且紧凑的摘要被返回给LLM。

  • 数据在服务器重启后仍然存在 --明天重新打开克劳德桌面

你的信号仍然存在。

  • 所有数据集中在一个地方 --加载测量和生成测试

信号并排显示在同一文件夹中。

~/.mcsa_data/
  signals/
    sig_a1b2c3d4.npz   ← loaded from CSV
    sig_e5f6g7h8.npz   ← generated test signal
  spectra/
    spec_i9j0k1l2.npz  ← FFT result

使用 list_stored_data 查看磁盘上的所有内容 clear_stored_data 删除项目。

使用示例

真实信号——一次性诊断

分析测量信号的最快方法是 diagnose_from_file 工具。只需提供文件路径和电机铭牌数据:

“从以下方面诊断电机 C:\data\motor_phaseA.csv --50Hz电源, 4极,1470转/分”

服务器加载文件,预处理信号,计算频谱, 运行所有故障检测器,并返回一个完整的JSON报告 严重程度分级结果。

分步工作流程(带信号ID)

  1. 加载测量信号 (或生成一个合成的):

> “从以下位置加载信号 measurement.wav" → 回报 signal_id: sig_a1b2 > 或:“生成转子断条故障的测试信号”→ sig_c3d4

  1. 计算电机参数:

> “计算以1470 RPM运行的4极50 Hz电源电机的电机参数”

  1. 计算预期故障频率:

> “此电机的预期故障频率是多少?”

  1. 对信号进行预处理:

> “预处理信号sig_a1b2”→ 返回新 signal_id: sig_e5f6

  1. 分析频谱:

> “计算sig_e5f6的FFT频谱”→ 回报 spectrum_id: spec_g7h8

  1. 检测特定故障:

> “检查spec_g7h8中的转子线棒是否断裂”

  1. 包络分析(可选):

> “计算sig_e5f6的包络谱”

基于存储信号的快速诊断

run_full_diagnosis 该工具根据存储的信号运行整个管道 在一次通话中:

Input: signal_id + motor nameplate data
Output: complete report with fault severities and recommendations

轴承分析

对于轴承故障分析,您需要轴承几何形状(球的数量, 球直径、节径、接触角)。服务器将:

  1. 计算特征缺陷频率(BPFO、BPFI、BSF、FTF)
  2. 计算预期的当前边带
  3. 在频谱中搜索那些边带

支持的文件格式

格式扩展名采样率
CSV/TSV.csv, .tsv, .txt从时间列或用户提供
WAV.wav嵌入表头
NumPy.npy用户提供

故障检测理论

转子杆断裂(BRB)

$(1\\pm2s)\\cdot f_s$处的边带,其中$s$为滑动,$f_s$为供电频率。 严重性根据边带与基波振幅的dB比进行分类。

偏心

$f_s\\pm k\\cdot f_r$处的边带,其中$f_r$是转子机械频率。

定子匝间故障

由于绕组不对称,$f_s\\pm 2k\\cdot f_r$处的边带。

轴承缺陷

扭矩振荡调节定子电流,在$f_s\\pm k\\cdot f\_{defect}$处产生边带。 缺陷频率取决于轴承几何形状(BPFO、BPFI、BSF、FTF)。

严重性阈值(低于基本值dB)

级别范围
健康≤-50 dB
初期-50至-45 dB
中等-45至-40 dB
严重>-35 dB
备注:这些是一般准则。实际阈值应根据基线测量值适应特定的电机、负载和应用。

发展

设置

git clone https://github.com/LGDiMaggio/mcp-motor-current-signature-analysis.git
cd mcp-motor-current-signature-analysis
uv sync --dev

运行测试

uv run pytest

使用MCP检查器运行

uv run mcp dev src/mcp_server_mcsa/server.py

棉绒和类型检查

uv run ruff check src/ tests/
uv run pyright src/

依赖项

文档

有关每个工具、资源和提示的详细参考,包括 参数表、诊断工作流、集成模式和严重性 阈值——请参见 使用指南.

引用

如果您在研究中使用此软件,请引用它:

@software{dimaggio_mcsa_2025,
  author       = {Di Maggio, Luigi Gianpio},
  title        = {mcp-server-mcsa: MCP Server for Motor Current Signature Analysis},
  year         = 2025,
  url          = {https://github.com/LGDiMaggio/mcp-motor-current-signature-analysis},
  license      = {MIT}
}
GitHub展示了 “引用此存储库” 按钮自动从 CITATION.cff 文件。

![ORCID](https://orcid.org/0000-0002-2295-8944)

许可证

麻省理工学院——见 许可证 了解详情。

目录标签

目录标签

PythonClaude云端部署电机诊断本地部署频谱分析故障检测预测性维护信号处理

支持客户端

Claude DesktopClaudeVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

21

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP