GitHub - idoru/influxdb-mcp-server: An MCP Server for querying InfluxDB (original) (raw)

MseeP Badge

InfluxDB MCP Server

A Model Context Protocol (MCP) server that exposes access to an InfluxDB instance using the InfluxDB OSS API v2. Mostly built with Claude Code.

Features

This MCP server provides:

Resources

The server exposes the following resources:

  1. Organizations List: influxdb://orgs
    • Displays all organizations in the InfluxDB instance
  2. Buckets List: influxdb://buckets
    • Shows all buckets with their metadata
  3. Bucket Measurements: influxdb://bucket/{bucketName}/measurements
    • Lists all measurements within a specified bucket
  4. Query Data: influxdb://query/{orgName}/{fluxQuery}
    • Executes a Flux query and returns results as a resource

Tools

The server provides these tools:

  1. write-data: Write time-series data in line protocol format
    • Parameters: org, bucket, data, precision (optional)
  2. query-data: Execute Flux queries
    • Parameters: org, query
  3. create-bucket: Create a new bucket
    • Parameters: name, orgID, retentionPeriodSeconds (optional)
  4. create-org: Create a new organization
    • Parameters: name, description (optional)

Prompts

The server offers these prompt templates:

  1. flux-query-examples: Common Flux query examples
  2. line-protocol-guide: Guide to InfluxDB line protocol format

Configuration

The server requires these environment variables:

Installation

Run directly with npx

INFLUXDB_TOKEN=your_token npx influxdb-mcp-server

Option 2: Install globally

Install globally

npm install -g influxdb-mcp-server

Run the server

INFLUXDB_TOKEN=your_token influxdb-mcp-server

Option 3: From source

Clone the repository

git clone https://github.com/idoru/influxdb-mcp-server.git cd influxdb-mcp-server

Install dependencies

npm install

Run the server

INFLUXDB_TOKEN=your_token npm start

Integration with Claude for Desktop

Add the server to your claude_desktop_config.json:

{ "mcpServers": { "influxdb": { "command": "npx", "args": ["influxdb-mcp-server"], "env": { "INFLUXDB_TOKEN": "your_token", "INFLUXDB_URL": "http://localhost:8086", "INFLUXDB_ORG": "your_org" } } } }

If installed locally

{ "mcpServers": { "influxdb": { "command": "node", "args": ["/path/to/influxdb-mcp-server/src/index.js"], "env": { "INFLUXDB_TOKEN": "your_token", "INFLUXDB_URL": "http://localhost:8086", "INFLUXDB_ORG": "your_org" } } } }

Code Structure

The server code is organized into a modular structure:

This structure allows for better maintainability, easier testing, and clearer separation of concerns.

Testing

The repository includes comprehensive integration tests that:

To run the tests:

License

MIT