IoTDB MCP Server

Apache IoTDB MCP Server

Local serverstdioPython

What is the IoTDB MCP server?

Apache IoTDB MCP Server. That is what the iotdb mcp server brings to an AI assistant: the same capability, reachable through the Model Context Protocol rather than a separate app or dashboard.

The short version

A Model Context Protocol (MCP) server implementation that provides database interaction and business intelligence capabilities through IoTDB. This server enables running SQL queries and interacting with IoTDB using different SQL dialects (Tree Model and Table Model).

The tools it exposes

The server publishes 5 tools. What each one is for:

  • Resources — The Resources tool exposed by this server
  • Prompts — The Prompts tool exposed by this server
  • Tools — The server offers different tools for IoTDB Tree Model and Table Model. You can choose between them by setting the "IOTDB_SQL_DIALECT" configuration
  • macOS — Location: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows — The Windows tool exposed by this server

What it needs from you

Configuration is passed through the environment: IOTDB_HOST, IOTDB_PORT, IOTDB_USER, IOTDB_PASSWORD, IOTDB_DATABASE, IOTDB_SQL_DIALECT, IOTDB_EXPORT_PATH. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

  • Python environment - uv package manager - IoTDB installation - MCP server dependencies

Getting it running

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.

How it compares

Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. IoTDB's toolset — Resources, Prompts, Tools and 2 more — is a fair guide to whether it matches your workflow. It is maintained by apache; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Things to watch

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Available tools

ToolWhat it does
ResourcesThe Resources tool exposed by this server.
PromptsThe Prompts tool exposed by this server.
ToolsThe server offers different tools for IoTDB Tree Model and Table Model. You can choose between them by setting the "IOTDB_SQL_DIALECT" configuration to either "tree" or "table".
macOSLocation: ~/Library/Application Support/Claude/claude_desktop_config.json
WindowsThe Windows tool exposed by this server.

Configuration

  • Python environment - uv package manager - IoTDB installation - MCP server dependencies
VariableDescriptionRequired
IOTDB_HOSTEndpoint or connection string the server talks to.Optional
IOTDB_PORTConfiguration value read at startup.Optional
IOTDB_USERConfiguration value read at startup.Optional
IOTDB_PASSWORDConfiguration value read at startup.Optional
IOTDB_DATABASEConfiguration value read at startup.Optional
IOTDB_SQL_DIALECTConfiguration value read at startup.Optional
IOTDB_EXPORT_PATHFilesystem location the server is allowed to use.Optional

Example prompts to try

  • Use IoTDB to Resources.
  • Use IoTDB to Prompts.
  • Use IoTDB to Tools.

Frequently asked questions

Two dialects: **tree** (for timeseries metadata and data) and **table** (for relational tables). Set the `IOTDB_SQL_DIALECT` environment variable to `tree` or `table`.