关于 LocalDude
用于查询 InfluxDB 时间序列数据的 Node.js/TypeScript MCP 服务。工具支持自定义 Flux 查询,以及按测量项和字段获取最新值或时间范围内的数据。
主要功能
- 01运行自定义 Flux 查询
- 02获取测量项的最新值
- 03按时间范围查询测量数据
适用场景
- 01查看最新记录的传感器值
- 02检查指定时段内的传感器读数
MCP 相关
向 MCP 客户端提供 InfluxDB 查询工具,包括自定义 Flux 查询、最新值查询和时间范围查询。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
LocalDude
一个使用 Model Context Protocol(MCP)SDK 的 Node.js/TypeScript 项目。
GitHub 仓库
此项目托管在 GitHub 上。要克隆仓库:
git clone https://github.com/username/localdude.git
cd localdude
贡献
欢迎贡献!有关如何为此项目做出贡献的详情,请参阅 CONTRIBUTING.md。
安装
npm install
可用脚本
开发
npm run dev- 在开发模式下启动应用,并在文件更改时自动重新构建npm run dev:server- 在开发模式下启动服务,并在文件更改时自动重新构建
构建和运行
npm run build- 将 TypeScript 文件编译为 JavaScriptnpm run watch- 以监视模式编译 TypeScript 文件(不重启)npm run start- 构建并启动主应用npm run server- 构建并启动服务
自动重新构建功能
此项目配置为在 TypeScript 文件更改时自动重新构建并重启。此功能通过以下工具实现:
- nodemon:监视文件更改并触发重新构建
- ts-node:直接执行 TypeScript 文件
自动重新构建行为配置在 nodemon.json 中,它会监视以下文件的更改:
- 根目录中的所有
.ts文件 src目录中的所有.ts文件(如果该目录存在)
检测到更改时,应用会自动重新构建并重启。
InfluxDB 集成
此项目集成了 InfluxDB,用于时序数据存储和查询。
配置
要使用 InfluxDB 集成,需要在 .env 文件中设置以下环境变量:
INFLUXDB_URL=http://localhost:8086
INFLUXDB_TOKEN=your_influxdb_token
INFLUXDB_ORG=your_organization
INFLUXDB_BUCKET=your_bucket
你可以从 .env.example 文件中复制这些变量,并将占位值替换为实际的 InfluxDB 连接信息。
可用的 InfluxDB 工具
此服务提供以下工具来与 InfluxDB 交互:
-
influxdb-query:执行自定义 Flux 查询
{ "query": "from(bucket: \"your_bucket\") |> range(start: -1h) |> filter(fn: (r) => r._measurement == \"your_measurement\")" } -
influxdb-latest:获取某个 measurement 和字段的最新数据点
{ "measurement": "your_measurement", "field": "your_field", "timeRange": "-1h" // optional, defaults to "-1h" } -
influxdb-range:获取指定时间范围内的数据
{ "measurement": "your_measurement", "field": "your_field", "start": "-1h", "stop": "now()" // optional, defaults to "now()" }
可以通过 MCP 服务接口使用这些工具查询 InfluxDB 数据库。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。