article
README
🚀 InfluxDB MCP 服务器
InfluxDB MCP 服务器是一个基于 Model Context Protocol (MCP) 的服务器,借助 InfluxDB OSS API v2 提供对 InfluxDB 实例的访问。该项目主要使用 Claude Code 构建。
🚀 快速开始
要配置 InfluxDB MCP 服务器,需添加以下环境变量:
INFLUXDB_URL=http://localhost:8086
INFLUXDB_TOKEN=your-influxdb-token
使用 npx 安装
npx influx-mcp-server@latest --install
全局安装
npm install -g influx-mcp-server
从源码安装
- 克隆仓库:
git clone https://github.com/your-repository.git cd your-repository - 安装依赖项:
npm install - 启动服务器:
npm start
✨ 主要特性
此 MCP 服务器提供以下功能:
- 资源:可访问组织、存储桶和测量数据。
- 工具:支持写入数据、执行查询和管理数据库对象。
- 提示模板:提供常见 Flux 查询示例和 Line Protocol 格式指南。
📚 详细文档
资源
该服务器暴露以下资源:
- 组织列表:
influxdb://orgs- 可显示 InfluxDB 实例中的所有组织。
- 存储桶列表:
influxdb://buckets- 能展示所有存储桶及其元数据。
- 存储桶测量值:
influxdb://bucket/{bucketName}/measurements- 会列出指定存储桶内的所有测量值。
- 查询数据:
influxdb://query/{orgName}/{fluxQuery}- 可执行 Flux 查询并将结果作为资源返回。
工具
服务器提供以下工具:
write-data:按行协议格式写入时序数据- 参数:组织、存储桶、数据、精度(可选)
query-data:执行 Flux 查询- 参数:组织、查询
create-bucket:创建新存储桶- 参数:名称、组织、元数据(可选)
create-org:创建新组织- 参数:组织名称
提示模板
- Flux 查询示例提示:提供常见 Flux 查询的示例和指南。
- Line Protocol 格式指南:解释如何使用 Line Protocol 格式写入数据。
🔧 技术细节
代码结构
src/
├── main.ts # 主程序入口
├── config.ts # 配置文件
└── modules/
├── influxdb/ # InfluxDB 相关模块
│ └── connection.ts # 连接管理
├── prompts/ # 提示模板
│ ├── flux-query-examples.prompt.ts # Flux 查询示例提示
│ └── line-protocol-guide.prompt.ts # Line Protocol 指南
└── utils/ # 工具函数
└── logger.ts # 日志记录工具
测试
仓库包含全面的集成测试,测试步骤如下:
- 启动 Docker 容器中的 InfluxDB 实例。
- 填充示例数据。
- 测试所有 MCP 服务器功能。
运行测试命令:
npm test
📄 许可证
本项目采用 MIT 许可证。
Scan to contact