Сервер InfluxDB MCP
Сервер Model Context Protocol (MCP), который предоставляет доступ к экземпляру InfluxDB с помощью InfluxDB OSS API v2. В основном создан с помощью Claude Code.
Функции
Этот сервер MCP обеспечивает:
Ресурсы : доступ к данным организации, сегмента и измерений.
Инструменты : запись данных, выполнение запросов и управление объектами базы данных.
Подсказки : Шаблоны для общих запросов Flux и формат линейного протокола
Related MCP server: MCP Deep Web Research Server
Ресурсы
Сервер предоставляет следующие ресурсы:
Список организаций :
influxdb://orgsОтображает все организации в экземпляре InfluxDB
Список Buckets :
influxdb://bucketsПоказывает все сегменты с их метаданными.
Измерения ведра :
influxdb://bucket/{bucketName}/measurementsПеречисляет все измерения в указанном сегменте
Запрос данных :
influxdb://query/{orgName}/{fluxQuery}Выполняет запрос Flux и возвращает результаты в виде ресурса
Инструменты
Сервер предоставляет следующие инструменты:
write-data: Запись данных временного ряда в формате линейного протоколаПараметры: org, bucket, data, precision (необязательно)
query-data: Выполнение запросов FluxПараметры: org, запрос
create-bucket: Создать новый контейнерПараметры: имя, orgID, remainnerPeriodSeconds (необязательно)
create-org: Создать новую организациюПараметры: имя, описание (необязательно)
Подсказки
Сервер предлагает следующие шаблоны подсказок:
flux-query-examples: Примеры общих запросов Fluxline-protocol-guide: Руководство по формату линейного протокола InfluxDB
Конфигурация
Серверу требуются следующие переменные среды:
INFLUXDB_TOKEN(обязательно): токен аутентификации для API InfluxDBINFLUXDB_URL(необязательно): URL-адрес экземпляра InfluxDB (по умолчаниюhttp://localhost:8086)INFLUXDB_ORG(необязательно): название организации по умолчанию для определенных операций.
Установка
Установка через Smithery
Чтобы автоматически установить InfluxDB MCP Server для Claude Desktop через Smithery :
npx -y @smithery/cli install @idoru/influxdb-mcp-server --client claudeВариант 1: Запуск с npx (рекомендуется)
# Run directly with npx
INFLUXDB_TOKEN=your_token npx influxdb-mcp-serverВариант 2: Глобальная установка
# Install globally
npm install -g influxdb-mcp-server
# Run the server
INFLUXDB_TOKEN=your_token influxdb-mcp-serverВариант 3: Из источника
# 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Интеграция с Claude для рабочего стола
Добавьте сервер в ваш claude_desktop_config.json :
Использование npx (рекомендуется)
{
"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"
}
}
}
}Структура кода
Код сервера организован в виде модульной структуры:
src/index.js— Основная точка входа сервераconfig/- Файлы, связанные с конфигурациейenv.js— Обработка переменных среды
utils/- Вспомогательные функцииinfluxClient.js— клиент API InfluxDBloggerConfig.js— Конфигурация консольного логгера
handlers/- Обработчики ресурсов и инструментовorganizationsHandler.js— список организацийbucketsHandler.js— список контейнеровmeasurementsHandler.js— список измеренийqueryHandler.js— выполнение запросаwriteDataTool.js— инструмент записи данныхqueryDataTool.js— инструмент запросовcreateBucketTool.js— инструмент создания контейнераcreateOrgTool.js— инструмент создания организации
prompts/- Шаблоны подсказокfluxQueryExamplesPrompt.js— примеры запросов FluxlineProtocolGuidePrompt.js— Руководство по протоколу линии
Такая структура обеспечивает лучшую ремонтопригодность, более простое тестирование и более четкое разделение задач.
Тестирование
Репозиторий включает в себя комплексные интеграционные тесты, которые:
Разверните контейнер Docker с помощью InfluxDB
Заполните его образцами данных.
Тестирование всех функций сервера MCP.
Для запуска тестов:
npm testЛицензия
Массачусетский технологический институт