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/%2Fapi%2Fstatus


Инструменты

Название инструмента

Описание

Входные параметры

get_status

Получить текущий статус сервера Kibana

Никто

execute_api

Выполнить пользовательский запрос API Kibana

method

(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 Kibana

method

(строка),

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/%2Fapi%2Fstatus ), а сервер возвращает структурированные данные, которые 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