Python implementation of a Model Context Protocol (MCP) server that exposes IoTDB time-series data through SQL (tree or table dialect).
https://github.com/apache/iotdb-mcp-serverStop context-switching between your time-series database documentation and your actual analysis work. This MCP server bridges Apache IoTDB—the enterprise time-series database built for IoT workloads—directly into Claude Desktop with native SQL support.
You're dealing with millions of sensor readings, device metrics, or industrial telemetry. IoTDB handles the storage beautifully, but every analysis session starts the same way: hunting through docs for the right query syntax, remembering device naming conventions, and crafting complex time-window queries just to get started.
What if you could just ask: "Show me temperature anomalies from Building A sensors over the last 48 hours" or "Compare power consumption patterns between production lines this month versus last month"?
This isn't another generic database connector. IoTDB is specifically engineered for time-series workloads—handling billions of data points with millisecond precision timestamps. The MCP server preserves that performance while adding conversational query capabilities.
Tree Model Support: Perfect for hierarchical IoT deployments where your data follows device → sensor → measurement patterns. Ask about specific device hierarchies naturally.
Table Model Support: When you need traditional relational patterns for your time-series data. Switch modes based on your query complexity.
SQL Dialect Flexibility: Toggle between tree and table modes depending on whether you're exploring device relationships or crunching measurement data.
Industrial IoT Monitoring: "Find all temperature sensors in Zone 3 that exceeded 85°C in the last week, grouped by equipment type." The server handles the device hierarchy traversal and time-window queries automatically.
Smart Building Analytics: "Compare energy consumption patterns between floors 10-15 during business hours versus after-hours for the past month." Complex time-based joins become natural language requests.
Fleet Management: "Show me vehicles with abnormal fuel consumption patterns in the Chicago region over the last 30 days." The server navigates your device taxonomy and temporal analysis seamlessly.
Drop this into your Claude Desktop config and you're immediately querying live IoTDB data conversationally. No API learning curve, no query builder interfaces—just direct database access through natural language.
The server handles connection management, query optimization, and result formatting. You focus on the insights, not the infrastructure.
Tree Model Tools:
metadata_query for schema exploration and device discoveryselect_query for time-series data retrievalTable Model Tools:
read_query for relational-style analysislist_tables and describe_table for schema navigationgit clone https://github.com/apache/iotdb-mcp-server.git
cd iotdb-mcp-server
uv sync
Add to Claude Desktop config:
{
"mcpServers": {
"iotdb": {
"command": "uv",
"args": ["--directory", "/path/to/iotdb-mcp-server/src/iotdb_mcp_server", "run", "server.py"],
"env": {
"IOTDB_HOST": "your-iotdb-host",
"IOTDB_PORT": "6667",
"IOTDB_USER": "root",
"IOTDB_PASSWORD": "your-password",
"IOTDB_DATABASE": "your-database",
"IOTDB_SQL_DIALECT": "table"
}
}
}
}
That's it. Your time-series database is now conversationally accessible.
This is Apache IoTDB—battle-tested in production environments handling petabytes of sensor data—now with an AI interface that understands your domain. Perfect for IoT developers, data engineers, and analysts who need to move fast without sacrificing the robustness of enterprise time-series infrastructure.