IoTDB MCP Server
Официальный MCP-сервер Apache IoTDB: SQL-запросы к временным рядам в древовидной и табличной модели, экспорт в CSV и Excel
Установка
{
"mcpServers": {
"iotdb": {
"command": "uv",
"args": ["--directory", "/Users/your_username/iotdb-mcp-server/src/iotdb_mcp_server", "run", "server.py"],
"env": {
"IOTDB_HOST": "127.0.0.1",
"IOTDB_PORT": "6667",
"IOTDB_USER": "root",
"IOTDB_PASSWORD": "",
"IOTDB_DATABASE": "test",
"IOTDB_SQL_DIALECT": "table",
"IOTDB_EXPORT_PATH": "/path/to/export/folder"
}
}
}
}Сначала склонируйте репозиторий и выполните uv sync. Путь в --directory замените на свой.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Сервер дает агенту доступ к базе временных рядов Apache IoTDB. В табличном диалекте агент получает список таблиц, описание их схемы и выполняет SELECT. В древовидном он читает метаданные командами SHOW и COUNT, выполняет выборки и пакеты запросов только для чтения с постраничным чтением результатов. Результаты можно выгрузить в CSV или Excel. Есть инструменты для вызова пользовательских функций и прогнозов моделей AINode, а перед изменяющими запросами сервер сообщает нужные права и уровень риска.
Для кого. Для инженеров данных и разработчиков IoT-систем, которые хранят телеметрию в Apache IoTDB.
Подходит, если
- Нужно спросить у агента о показаниях датчиков за период без ручного SQL
- Нужно изучить структуру незнакомой базы IoTDB
- Нужно выгрузить результат запроса в Excel для отчета
Не подходит, если
- Данные хранятся не в IoTDB
- Нужна строгая блокировка изменяющих запросов, а режим strict вы настраивать не будете
Пример запроса к агенту
Покажи таблицы в базе и среднюю температуру по каждому устройству за вчераОграничения
Пакета для запуска одной командой в README нет: сервер клонируется и запускается через uv, либо собирается Docker-образ. Нужна доступная база IoTDB. По умолчанию проверка прав только рекомендательная, жесткая блокировка включается переменной TIMESEEK_MCP_PERMISSION_ENFORCEMENT=strict. Диалект tree или table выбирается при запуске.
Как отключить. Удалите блок iotdb из claude_desktop_config.json или остановите контейнер iotdb-mcp-server.
MCP
- Транспорт
- stdio
- Авторизация
- API-ключ
| Переменные окружения | |
|---|---|
| IOTDB_HOST | Адрес IoTDB, по умолчанию 127.0.0.1. |
| IOTDB_PORT | Порт IoTDB, по умолчанию 6667. |
| IOTDB_USER | Имя пользователя, по умолчанию root. |
| IOTDB_PASSWORD секрет | Пароль пользователя IoTDB. |
| IOTDB_DATABASE | База для табличного диалекта. |
| IOTDB_SQL_DIALECT | Диалект: tree или table, по умолчанию table. |
| IOTDB_EXPORT_PATH | Папка для выгрузки CSV и Excel. |
Проверка безопасности
- Выполняет SQL по базе, включая потенциально изменяющие запросы
- Хранит пароль к базе в конфигурации
Коротко о README
README перечисляет инструменты для древовидной и табличной модели, инструменты пользовательских функций и прогнозов, а также модель прав. Параметры подключения задаются аргументами или переменными окружения. Приведена конфигурация Claude Desktop через uv, сборка и запуск Docker-образа, описаны пул сессий, повторы соединения и обработка ошибок. Лицензия Apache 2.0.
Частые вопросы
Чем отличаются диалекты tree и table?
В tree запросы обращаются к путям root..., в table к таблицам и колонкам текущей базы. Набор инструментов зависит от выбранного диалекта.
Может ли агент изменить данные?
Сервер сообщает о рисках изменяющих запросов, а подтверждение остается за агентом. Для жесткого запрета включите режим strict.
Похожие
166 скиллов для научных задач: биоинформатика, хемоинформатика, клинические данные, геоданные и доступ к 100+ базам
Открытый MCP-сервер Google для баз данных: готовые инструменты для Postgres, MySQL, BigQuery, Spanner и других, плюс свои инструменты в tools.yaml
Официальные скиллы Hugging Face: работа с Hub через CLI hf, датасеты, обучение моделей, Spaces, оценка и деплой
Экономный по токенам MCP-сервер для PostgreSQL, MySQL, MariaDB, SQL Server и SQLite с режимом только для чтения