influxdb-mcp-server
An MCP Server for querying InfluxDB
Documentation

InfluxDB v2 MCP Server
A Model Context Protocol (MCP) server that exposes access to an InfluxDB v2 instance using the InfluxDB OSS API v2. Mostly built with Claude Code.
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:
1. Organizations List: `influxdb://orgs`
2. Buckets List: `influxdb://buckets`
3. Bucket Measurements: `influxdb://bucket/{bucketName}/measurements`
4. Query Data: `influxdb://query/{orgName}/{fluxQuery}`
Tools
The server provides these tools:
1. `write-data`: Write time-series data in line protocol format
2. `query-data`: Execute Flux queries
3. `create-bucket`: Create a new bucket
4. `create-org`: Create a new organization
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:
- `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
Installing via Smithery
To install InfluxDB MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @idoru/influxdb-mcp-server --client claudeOption 1: Run with npx (recommended)
# Run directly with npx
INFLUXDB_TOKEN=your_token npx influxdb-mcp-serverOption 2: Install globally
# Install globally
npm install -g influxdb-mcp-server
# Run the server
INFLUXDB_TOKEN=your_token influxdb-mcp-serverOption 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`influxdb-mcp-server` uses stdio transport by default. You can explicitly request it with `--stdio`, or start the server with Streamable HTTP transport by providing the `--http` option with an optional port number (defaults to 3000). This mode uses an internal Express.js server:
# Start with Streamable HTTP transport on default port 3000
INFLUXDB_TOKEN=your_token npm start -- --http
# Start with Streamable HTTP transport on a specific port
INFLUXDB_TOKEN=your_token npm start -- --http 8080If you installed globally or are using npx, you can run:
INFLUXDB_TOKEN=your_token influxdb-mcp-server --http
# or explicitly force stdio
INFLUXDB_TOKEN=your_token influxdb-mcp-server --stdio
# or
INFLUXDB_TOKEN=your_token influxdb-mcp-server --http 8080Integration with Claude for Desktop
Add the server to your `claude_desktop_config.json`:
Using npx (recommended)
{
"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 testLicense
MIT
Frequently asked questions
What is influxdb-mcp-server?
influxdb-mcp-server is An MCP Server for querying InfluxDB
How do I install influxdb-mcp-server?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is influxdb-mcp-server open source?
Yes — it is hosted on GitHub at https://github.com/idoru/influxdb-mcp-server and has 27 stars.
Related MCP tools
An MCP server that installs other MCP servers for you JavaScript-based implementation. Trusted by 1400+ developers. Trusted by 1400+ developers.
MCP server for interacting with the iOS simulator JavaScript-based implementation. Trusted by 1200+ developers. Trusted by 1200+ developers.
A Model Context Protocol server that provides read-only access to MySQL databases. This server enables LLMs to inspect database schemas and execute read-only...
This is an MCP server that allows you to directly download transcripts of YouTube videos. JavaScript-based implementation.
The all-in-one Desktop & Docker AI application with built-in RAG, AI agents, No-code agent builder, MCP compatibility, and more.
An AI-powered task-management system you can drop into Cursor, Lovable, Windsurf, Roo, and others. Built for the Model Context Protocol to enhance AI capabiliti
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP