Run queries against InfluxDB OSS API v2.
A Model Context Protocol (MCP) server that exposes access to an InfluxDB instance using the InfluxDB OSS API v2. Mostly built with Claude Code.
This MCP server provides:
The server exposes the following resources:
Organizations List: influxdb://orgs
Buckets List: influxdb://buckets
Bucket Measurements: influxdb://bucket/{bucketName}/measurements
Query Data: influxdb://query/{orgName}/{fluxQuery}
The server provides these tools:
write-data
: Write time-series data in line protocol format
query-data
: Execute Flux queries
create-bucket
: Create a new bucket
create-org
: Create a new organization
The server offers these prompt templates:
flux-query-examples
: Common Flux query examplesline-protocol-guide
: Guide to InfluxDB line protocol formatThe server requires these environment variables:
INFLUXDB_TOKEN
(required): Authentication token for the InfluxDB APIINFLUXDB_URL
(optional): URL of the InfluxDB instance (defaults to http://localhost:8086
)INFLUXDB_ORG
(optional): Default organization name for certain operationsTo install InfluxDB MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @idoru/influxdb-mcp-server --client claude
# Run directly with npx
INFLUXDB_TOKEN=your_token npx influxdb-mcp-server
# Install globally
npm install -g influxdb-mcp-server
# Run the server
INFLUXDB_TOKEN=your_token influxdb-mcp-server
# 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
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"
}
}
}
}
{
"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"
}
}
}
}
The server code is organized into a modular structure:
src/
index.js
- Main server entry pointconfig/
- Configuration related files
env.js
- Environment variable handlingutils/
- Utility functions
influxClient.js
- InfluxDB API clientloggerConfig.js
- Console logger configurationhandlers/
- Resource and tool handlers
organizationsHandler.js
- Organizations listingbucketsHandler.js
- Buckets listingmeasurementsHandler.js
- Measurements listingqueryHandler.js
- Query executionwriteDataTool.js
- Data write toolqueryDataTool.js
- Query toolcreateBucketTool.js
- Bucket creation toolcreateOrgTool.js
- Organization creation toolprompts/
- Prompt templates
fluxQueryExamplesPrompt.js
- Flux query exampleslineProtocolGuidePrompt.js
- Line protocol guideThis structure allows for better maintainability, easier testing, and clearer separation of concerns.
The repository includes comprehensive integration tests that:
To run the tests:
npm test
MIT
by: Community
A Model Context Protocol server for document Q&A powered by Langflow. It demonstrates core MCP concepts by providing a simple interface to query documents through a Langflow backend.
by: Community
This is a Python-based MCP server that provides OpenAI `web_search` build-in tool.
by: Community
Provides Google Search results via the Google Custom Search API