Skip to main content
Glama

Kibana MCP Server

by TocharianOU

MCP-сервер Кибана

Спецификация API

Этот проект основан на официальной документации API Elastic Kibana и использует спецификацию OpenAPI YAML из Elastic Stack 8.x (ES8) для динамического извлечения и управления всеми конечными точками API Kibana. Для получения последних подробностей см. документацию API Kibana .

Реализация сервера Kibana MCP, которая позволяет любому MCP-совместимому клиенту (например, Claude Desktop) получать доступ к вашему экземпляру Kibana с помощью естественного языка или программных запросов.

Этот проект поддерживается сообществом и не является официальным продуктом Elastic или MCP.


Функции

  • Подключайтесь к локальным или удаленным экземплярам Kibana
  • Безопасная аутентификация (имя пользователя/пароль)
  • Поддержка SSL/TLS и пользовательских сертификатов CA
  • Предоставляет конечные точки API Kibana как инструменты и ресурсы
  • Поиск, просмотр и выполнение API Kibana из клиентов MCP
  • Типобезопасный, расширяемый и легко интегрируемый

Структура каталога

├── index.ts # Server entry point ├── src/ │ ├── types.ts # Type definitions and schemas │ ├── base-tools.ts # Tool registration and API logic │ ├── prompts.ts # Prompt registration (expert & resource helper) │ └── resources.ts # Resource registration (API paths/URIs) ├── kibana-openapi-source.yaml # Kibana API OpenAPI index ├── README.md # English documentation ├── README_zh.md # Chinese documentation

Ресурсы

URI ресурсаОписание
kibana-api://pathsВозвращает все доступные конечные точки API Kibana (можно фильтровать по параметрам search )
kibana-api://path/{method}/{encoded_path}Возвращает сведения о конкретной конечной точке API

Примеры:

  • kibana-api://paths?search=saved_objects
  • kibana-api://path/GET//api/status

Инструменты

Название инструментаОписаниеВходные параметры
get_statusПолучить текущий статус сервера KibanaНикто
execute_apiВыполнить пользовательский запрос API Kibanamethod (GET/POST/PUT/DELETE), path (строка), body (необязательно), params (необязательно)
search_kibana_api_pathsПоиск конечных точек API Kibana по ключевому словуsearch (строка)
list_all_kibana_api_pathsСписок всех конечных точек API KibanaНикто
get_kibana_api_detailПолучите подробную информацию о конкретной конечной точке API Kibanamethod (строка), path (строка)

Подсказки

Имя подсказкиОписание
kibana-tool-expertРежим эксперта инструмента (настоятельно рекомендуется в Claude Desktop), поддерживает интеллектуальный анализ, поиск, выполнение и объяснение API Kibana с помощью инструментов. Рекомендуется для большинства пользователей.
kibana-resource-helperРежим помощника по ресурсам, руководства по доступу и использованию информации API Kibana через URI ресурсов. Подходит для клиентов, которые поддерживают только доступ к ресурсам или которым нужны необработанные метаданные API.

Конфигурация

Настройте сервер через переменные среды:

Имя переменнойОписаниеНеобходимый
KIBANA_URLАдрес сервера Kibana (например , http://localhost:5601 )Да
KIBANA_USERNAMEИмя пользователя КибанаДа
KIBANA_PASSWORDПароль КибанаДа
KIBANA_CA_CERTПуть сертификата CA (необязательно, для проверки SSL)Нет
KIBANA_TIMEOUTВремя ожидания запроса в мс (по умолчанию 30000)Нет
KIBANA_MAX_RETRIESМаксимальное количество повторных запросов (по умолчанию 3)Нет
NODE_TLS_REJECT_UNAUTHORIZEDУстановите значение 0 , чтобы отключить проверку сертификата SSL (используйте с осторожностью)Нет

Использование

Запустить сервер

KIBANA_URL=http://your-kibana-server:5601 \ KIBANA_USERNAME=your-username \ KIBANA_PASSWORD=your-password \ NODE_TLS_REJECT_UNAUTHORIZED=0 \ npm start

Пример конфигурации клиента MCP

Добавьте в файл конфигурации Claude Desktop (путь MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json ):

{ "mcpServers": { "kibana-mcp-server": { "command": "node", "args": ["/path/to/mcp-server-kibana/dist/index.js"], "env": { "KIBANA_URL": "http://your-kibana-server:5601", "KIBANA_USERNAME": "your-username", "KIBANA_PASSWORD": "your-password", "NODE_TLS_REJECT_UNAUTHORIZED": "0" } } } }

Примеры запросов

  • «Каков статус моего сервера Kibana?»
  • «Перечислите все доступные конечные точки API Kibana».
  • «Показать сведения о конечной точке POST /api/saved_objects/_find».
  • «Выполнить пользовательский запрос API для /api/status».
  • «Получить список всех панелей мониторинга в Kibana».
  • «Запрос конечных точек API, связанных с событиями конечных точек».
  • «Перечислите все конечные точки API, связанные с делом».
  • «Создайте новое дело в Кибане».
  • «Создайте новую панель инструментов в Kibana».

Два режима подсказок в Claude Desktop

При использовании этого сервера с Claude Desktop поддерживаются два различных режима интерактивного взаимодействия:

1. Режим подсказок на основе инструментов

  • Как это работает: Claude Desktop может напрямую вызывать серверные инструменты (такие как get_status , execute_api , search_kibana_api_paths и т. д.), чтобы отвечать на ваши вопросы или выполнять действия.
  • Лучше всего подходит для: пользователей, которым нужен разговорный, управляемый опыт. Сервер будет автоматически искать, выполнять и объяснять API Kibana.
  • Пример: «Показать все конечные точки API Kibana, связанные с сохраненными объектами».
  • Совет по тестированию: выберите приглашение kibana-tool-expert в Claude Desktop для интеграционного тестирования, затем начните его использовать.

2. Режим подсказок на основе ресурсов

  • Как это работает: Claude Desktop взаимодействует с сервером через URI ресурсов (например, kibana-api://paths или kibana-api://path/GET//api/status ), а сервер возвращает структурированные данные, которые Claude может проанализировать.
  • Лучше всего подходит для: опытных пользователей, клиентов MCP, которые поддерживают только доступ к ресурсам, или сценариев программирования, требующих необработанных метаданных API.
  • Пример: «Получить ресурс kibana-api://paths?search=dashboard»

Примечание: Две конечные точки в resources ( kibana-api://paths и kibana-api://path/{method}/{encoded_path} ) имеют соответствующие базовые инструменты ( list_all_kibana_api_paths , get_kibana_api_detail ). Такая конструкция обеспечивает совместимость с клиентами MCP, которые не могут интеллектуально выбирать несколько ресурсов, что упрощает взаимодействие таких инструментов, как Claude Desktop, с Kibana.

Совет: Большинству пользователей рекомендуется использовать режим инструментов для более естественного и эффективного использования; режим ресурсов обеспечивает максимальную гибкость для расширенных вариантов использования и совместимости.


Разработка

Установить зависимости:

npm install

Сборка сервера:

npm run build

Автоматическая перестройка в режиме разработки:

npm run watch

Отладка

Поскольку сервер MCP взаимодействует через stdio, отладка может быть неудобной. Рекомендуется использовать MCP Inspector:

npm run inspector

После запуска Inspector предоставит доступный через браузер URL-адрес инструмента отладки.


Сообщество

Этот проект поддерживается сообществом. Вклады и отзывы приветствуются! Пожалуйста, будьте уважительны и инклюзивны во всех коммуникациях и следуйте Кодексу поведения сообщества Elastic .


Лицензия

Этот проект лицензирован по Apache License 2.0. Подробности смотрите в файле LICENSE .


Поиск неисправностей

  • Проверьте правильность конфигурации MCP
  • Убедитесь, что адрес Kibana доступен
  • Убедитесь, что учетные данные аутентификации имеют достаточные разрешения.
  • При использовании пользовательского центра сертификации убедитесь, что путь к сертификату правильный и читаемый.
  • При использовании NODE_TLS_REJECT_UNAUTHORIZED=0 помните о рисках безопасности
  • Проверьте сообщения об ошибках, выводимые в терминале.

Related MCP Servers

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/TocharianOU/mcp-server-kibana'

If you have feedback or need assistance with the MCP directory API, please join our Discord server