Сервер Elasticsearch MCP
Этот репозиторий содержит экспериментальные функции, предназначенные для исследований и оценки и не готовые к использованию в производстве.
Подключитесь к данным Elasticsearch напрямую из любого клиента MCP (например, Claude Desktop) с помощью протокола контекста модели (MCP).
Этот сервер подключает агентов к вашим данным Elasticsearch с помощью Model Context Protocol. Он позволяет вам взаимодействовать с вашими индексами Elasticsearch посредством разговоров на естественном языке.
Доступные инструменты
list_indices
: Список всех доступных индексов Elasticsearchget_mappings
: Получить сопоставления полей для определенного индекса Elasticsearchsearch
: выполнить поиск Elasticsearch с предоставленным запросом DSLget_shards
: Получить информацию о шардах для всех или определенных индексов
Предпосылки
- Экземпляр Elasticsearch
- Учетные данные аутентификации Elasticsearch (ключ API или имя пользователя/пароль)
- Клиент MCP (например, Claude Desktop)
Демо
https://github.com/user-attachments/assets/5dd292e1-a728-4ca7-8f01-1380d1bebe0c
Установка и настройка
Использование опубликованного пакета NPM
[!СОВЕТ] Самый простой способ использовать сервер Elasticsearch MCP — через опубликованный пакет npm.
- Настроить MCP-клиент
- Откройте ваш MCP Client. Посмотрите список MCP Clients , здесь мы настраиваем Claude Desktop.
- Перейдите в Настройки > Разработчик > Серверы MCP.
- Нажмите
Edit Config
и добавьте новый сервер MCP со следующей конфигурацией:
- Начать разговор
- Откройте новый разговор в вашем MCP Client
- Сервер MCP должен подключиться автоматически.
- Теперь вы можете задавать вопросы о своих данных Elasticsearch
Параметры конфигурации
Сервер Elasticsearch MCP поддерживает параметры конфигурации для подключения к Elasticsearch:
[!ПРИМЕЧАНИЕ] Для аутентификации необходимо предоставить либо ключ API, либо имя пользователя и пароль.
Переменная среды | Описание | Необходимый |
---|---|---|
ES_URL | URL вашего экземпляра Elasticsearch | Да |
ES_API_KEY | Ключ API Elasticsearch для аутентификации | Нет |
ES_USERNAME | Имя пользователя Elasticsearch для базовой аутентификации | Нет |
ES_PASSWORD | Пароль Elasticsearch для базовой аутентификации | Нет |
ES_CA_CERT | Путь к пользовательскому сертификату CA для Elasticsearch SSL/TLS | Нет |
Развитие на местном уровне
[!ПРИМЕЧАНИЕ] Если вы хотите изменить или расширить сервер MCP, следуйте этим шагам локальной разработки.
- Используйте правильную версию Node.js
- Установить зависимости
- Построить проект
- Запустить локально в приложении Claude Desktop
- Открыть приложение Claude для ПК
- Перейдите в Настройки > Разработчик > Серверы MCP.
- Нажмите
Edit Config
и добавьте новый сервер MCP со следующей конфигурацией:
- Отладка с помощью MCP InspectorЭто запустит MCP Inspector, позволяющий вам отлаживать и анализировать запросы. Вы должны увидеть:
Внося вклад
Мы приветствуем вклады от сообщества! Подробности о том, как внести вклад, см. в Руководстве по внесению вкладов .
Примеры вопросов
[!СОВЕТ] Вот несколько запросов на естественном языке, которые вы можете попробовать выполнить с помощью своего клиента MCP.
- «Какие индексы есть в моем кластере Elasticsearch?»
- «Покажите мне сопоставления полей для индекса «продукты»».
- «Найти все заказы на сумму более 500 долларов за прошлый месяц».
- «Какие продукты получили наибольшее количество 5-звездочных отзывов?»
Как это работает
- Клиент MCP анализирует ваш запрос и определяет, какие операции Elasticsearch необходимы.
- Сервер MCP выполняет эти операции (перечисление индексов, выборку сопоставлений, выполнение поиска).
- Клиент MCP обрабатывает результаты и представляет их в удобном для пользователя формате.
Лучшие практики безопасности
[!WARNING] Избегайте использования привилегий администратора кластера. Создавайте выделенные ключи API с ограниченной областью действия и применяйте детальный контроль доступа на уровне индекса, чтобы предотвратить несанкционированный доступ к данным.
Вы можете создать специальный ключ API Elasticsearch с минимальными правами доступа для управления доступом к вашим данным:
Лицензия
Данный проект лицензирован по лицензии Apache License 2.0.
Поиск неисправностей
- Убедитесь, что конфигурация вашего MCP правильная.
- Убедитесь, что URL-адрес Elasticsearch доступен с вашего компьютера.
- Убедитесь, что ваши учетные данные аутентификации (ключ API или имя пользователя/пароль) имеют необходимые разрешения.
- При использовании SSL/TLS с пользовательским центром сертификации убедитесь, что путь к сертификату указан правильно и файл доступен для чтения.
- Проверьте вывод терминала на наличие сообщений об ошибках.
Если у вас возникли проблемы, смело сообщайте о них в репозитории GitHub.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Подключает Claude и других клиентов MCP к данным Elasticsearch, позволяя пользователям взаимодействовать со своими индексами Elasticsearch посредством общения на естественном языке.
- Доступные инструменты
- Предпосылки
- Демо
- Установка и настройка
- Внося вклад
- Примеры вопросов
- Как это работает
- Лучшие практики безопасности
- Лицензия
- Поиск неисправностей
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server implementation that integrates Claude with Salesforce, enabling natural language interactions with Salesforce data and metadata for querying, modifying, and managing objects and records.Last updated -7184TypeScriptMIT License
- AsecurityAlicenseAqualityProvides an MCP protocol interface for interacting with Elasticsearch 7.x databases, supporting comprehensive search functionality including aggregations, highlighting, and sorting.Last updated -31PythonApache 2.0
- -securityFlicense-qualityAn MCP server that integrates with Claude to provide smart documentation search capabilities across multiple AI/ML libraries, allowing users to retrieve and process technical information through natural language queries.Last updated -Python
- AsecurityAlicenseAqualityAn MCP server implementation that integrates Claude with Salesforce, enabling natural language interactions with Salesforce data and metadata.Last updated -818TypeScriptMIT License