🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

influxdb-mcp-server

Package Overview
Dependencies
Maintainers
0
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

influxdb-mcp-server

A Model Context Protocol (MCP) server for InfluxDB that enables Claude and other AI assistants to work with time-series data

0.1.0
Source
npm
Version published
Weekly downloads
38
-7.32%
Maintainers
0
Weekly downloads
 
Created
Source

InfluxDB MCP Server

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

Features

This MCP server provides:

  • Resources: Access to organization, bucket, and measurement data
  • Tools: Write data, execute queries, and manage database objects
  • Prompts: Templates for common Flux queries and Line Protocol format

Resources

The server exposes the following resources:

  • Organizations List: influxdb://orgs

    • Displays all organizations in the InfluxDB instance
  • Buckets List: influxdb://buckets

    • Shows all buckets with their metadata
  • Bucket Measurements: influxdb://bucket/{bucketName}/measurements

    • Lists all measurements within a specified bucket
  • Query Data: influxdb://query/{orgName}/{fluxQuery}

    • Executes a Flux query and returns results as a resource

Tools

The server provides these tools:

  • write-data: Write time-series data in line protocol format

    • Parameters: org, bucket, data, precision (optional)
  • query-data: Execute Flux queries

    • Parameters: org, query
  • create-bucket: Create a new bucket

    • Parameters: name, orgID, retentionPeriodSeconds (optional)
  • create-org: Create a new organization

    • Parameters: name, description (optional)

Prompts

The server offers these prompt templates:

  • flux-query-examples: Common Flux query examples
  • line-protocol-guide: Guide to InfluxDB line protocol format

Configuration

The server requires these environment variables:

  • INFLUXDB_TOKEN (required): Authentication token for the InfluxDB API
  • INFLUXDB_URL (optional): URL of the InfluxDB instance (defaults to http://localhost:8086)
  • INFLUXDB_ORG (optional): Default organization name for certain operations

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:

  • src/
    • index.js - Main server entry point
    • config/ - Configuration related files
      • env.js - Environment variable handling
    • utils/ - Utility functions
      • influxClient.js - InfluxDB API client
      • loggerConfig.js - Console logger configuration
    • handlers/ - Resource and tool handlers
      • organizationsHandler.js - Organizations listing
      • bucketsHandler.js - Buckets listing
      • measurementsHandler.js - Measurements listing
      • queryHandler.js - Query execution
      • writeDataTool.js - Data write tool
      • queryDataTool.js - Query tool
      • createBucketTool.js - Bucket creation tool
      • createOrgTool.js - Organization creation tool
    • prompts/ - Prompt templates
      • fluxQueryExamplesPrompt.js - Flux query examples
      • lineProtocolGuidePrompt.js - Line protocol guide

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

Testing

The repository includes comprehensive integration tests that:

  • Spin up a Docker container with InfluxDB
  • Populate it with sample data
  • Test all MCP server functionality

To run the tests:

npm test

License

MIT

Keywords

influxdb

FAQs

Package last updated on 11 Mar 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts