TsunamiMCP
MCP(模型上下文协议)服务器,将AI助手连接到Seeq,实现工业传感器数据的自然语言查询。
概述
TsunamiMCP在人工智能助手(如Claude)和Seeq的工业分析平台之间架起了一座桥梁。它允许您:
- 按描述或名称搜索传感器和信号
- 计算一段时间内的平均传感器值
- 为传感器数据生成时间序列图
- 使用自然语言查询工业设备数据
先决条件
- Python 3.10或更高版本
- 具有API访问权限的Seeq帐户
- Seeq访问密钥和密码
安装
- 克隆此存储库:
git clone https://github.com/adraughon/TsunamiMCP.git
cd TsunamiMCP- 安装软件包:
pip install -e .或者直接安装依赖项:
pip install mcp>=0.9.0 seeq-spy>=197.0.0 pytz>=2023.3 pandas matplotlib seaborn配置
环境变量
TsunamiMCP需要设置以下环境变量:
SEEQ_URL:您的Seeq服务器URL(例如。,https://your-company.seeq.com)SEEQ_ACCESS_KEY:您的Seeq访问密钥SEEQ_ACCESS_KEY_PASSWORD:您的Seeq访问密钥密码
设置环境变量
Linux/macOS:
export SEEQ_URL="https://your-company.seeq.com"
export SEEQ_ACCESS_KEY="your-access-key"
export SEEQ_ACCESS_KEY_PASSWORD="your-password"Windows(PowerShell):
$env:SEEQ_URL="https://your-company.seeq.com"
$env:SEEQ_ACCESS_KEY="your-access-key"
$env:SEEQ_ACCESS_KEY_PASSWORD="your-password"使用a .env 文件(建议用于本地开发):
创建一个 .env 项目根目录中的文件:
SEEQ_URL=https://your-company.seeq.com
SEEQ_ACCESS_KEY=your-access-key
SEEQ_ACCESS_KEY_PASSWORD=your-password⚠️ 重要: 永远不要承诺你的 .env 文件或凭据到版本控制。这 .gitignore 文件被配置为防止这种情况。
用法
运行MCP服务器
配置后,您可以运行服务器:
tsunamiMCP或者直接:
python -m tsunamiMCP.server服务器通过stdio进行通信,旨在与MCP兼容的客户端一起使用。
可用工具
get_time_context:获取当前时间和时区上下文,以进行准确的时间计算search_signals:按描述、名称、路径、资产、单位或数据源搜索传感器/信号sensor_average:计算指定时间范围内传感器的平均值sensor_plot:为传感器数据生成时间序列图
查询示例
一旦连接到支持MCP的AI助手,您可以提出以下问题:
- “查找冷却塔中的所有压力传感器”
- “过去24小时的平均气温是多少?”
- “给我看昨天的流量传感器图”
- “搜索描述中带有‘压力’的传感器”
安全说明
- 从不提交凭据:确保您的Seeq访问密钥和密码安全
- 使用环境变量:始终对敏感数据使用环境变量
- 查看访问密钥:定期旋转您的Seeq访问密钥
- 网络安全:确保您的Seeq服务器连接安全(HTTPS)
发展
项目结构
tsunamiMCP/
├── pyproject.toml # Project configuration
├── README.md # This file
├── .gitignore # Git ignore rules
└── src/
└── tsunamiMCP/
├── __init__.py # Package initialization
└── server.py # MCP server implementation依赖项
mcp>=0.9.0:模型上下文协议库seeq-spy>=197.0.0:请参阅Python APIpytz>=2023.3:时区支持pandas:数据操作matplotlib:绘图(使用Agg后端)seaborn:增强绘图
许可证
\[在此处添加您的许可证\]
贡献
\[在此处添加贡献指南\]
支持
\[在此处添加支持信息\]
