OpenSearch MCP Server
MCP-сервер от проекта OpenSearch открывает агенту кластер: индексы, маппинги, поиск по DSL и состояние шардов.
- 158 ★ репозитория
- Последний коммит
- Apache-2.0
Расширенный доступ
Почему такой уровень
- Универсальный инструмент вызывает любой эндпоинт API: права учетной записи определяют, что агент изменит или удалит.
- Адрес и учетные данные кластера передаются серверу, а при сетевом запуске идут в запросах.
Установка
- Работает в
Ручная установка
pip install opensearch-mcp-server-pyПервая команда Install из README, пакет с PyPI. Запуск без установки: `uvx opensearch-mcp-server-py` в настройках MCP-клиента.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Универсальный инструмент вызывает любой эндпоинт API: права учетной записи определяют, что агент изменит или удалит.
- Адрес и учетные данные кластера передаются серверу, а при сетевом запуске идут в запросах.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
MCP-сервер `opensearch-mcp-server-py` подключает агента к кластеру OpenSearch. По умолчанию включены основные инструменты: список индексов, маппинг, поиск запросом на DSL, счетчик документов, объяснение совпадения, мультипоиск, состояние шардов и здоровье кластера. Отдельный универсальный инструмент вызывает любой эндпоинт API с нужным методом и телом. Дополнительные группы включают переменными окружения: диагностика узлов и сегментов, запросы PPL, рабочее место для релевантности поиска, аналитика логов, память агента на стороне кластера. Работает по stdio и потоковому HTTP (SSE и Streamable HTTP). Подключение берется из переменных, из файла настроек либо передается агентом при каждом вызове.
Для кого. Инженеры, которые ищут по логам и данным в OpenSearch и хотят спрашивать об этом агента обычным языком.
Подходит, если
- Агент разбирает инцидент по логам в индексе.
- Нужно понять, почему документ не попал в выдачу.
- Проверяют состояние шардов и здоровье кластера без консоли.
- Один агент работает сразу с несколькими кластерами.
Не подходит, если
- Кластер нельзя открывать агенту даже на чтение.
- Нужен готовый дашборд, а не разговор с данными.
- Доступ к продакшену выдают только человеку с подтверждением каждой записи.
Пример запроса к агенту
Покажи индексы кластера, найди в логах ошибки за последний час и объясни, почему нужный документ не попал в выдачу.MCP
- Транспорт
- stdio, http
- Авторизация
- API-ключ
Переменные окружения
`OPENSEARCH_URL`- Адрес кластера OpenSearch. Без него агент передает адрес при каждом вызове.
`OPENSEARCH_ENABLED_CATEGORIES`- Группы дополнительных инструментов, например `observability`.
`OPENSEARCH_DISABLED_CATEGORIES`- Группы, которые нужно выключить, например `core_tools`.
Ограничения
Универсальный инструмент вызывает любой эндпоинт API, поэтому права учетной записи в OpenSearch определяют, что агент сможет изменить или удалить. Выдавайте отдельному пользователю роль только на чтение, пока не нужно большее. Без переменных окружения сервер ждет параметры подключения от агента на каждый вызов, а при запуске по сети адрес и учетные данные передаются в запросах, так что защитите канал. Дополнительные группы инструментов включаются вручную и не заменяют настройку прав кластера.
Как отключить. Удалите запись сервера из настроек MCP-клиента и остановите свой HTTP-экземпляр, если запускали его. Роль и учетную запись в OpenSearch отзовите отдельно.
Частые вопросы
Какие инструменты включены по умолчанию?
Основные: `ListIndexTool`, `IndexMappingTool`, `SearchIndexTool`, `GetShardsTool`, `ClusterHealthTool`, `CountTool`, `ExplainTool`, `MsearchTool` и `GenericOpenSearchApiTool`. Остальные группы включают отдельно.
Можно ли запустить без переменных окружения?
Да. В режиме без настроек агент передает `opensearch_url` и параметры авторизации при каждом вызове, поэтому подходит для работы с несколькими кластерами.
Как включить дополнительные группы?
Через `OPENSEARCH_ENABLED_CATEGORIES`, например `observability` для PPL-запросов, либо через фильтр инструментов из руководства пользователя.
Как отключить базовые инструменты?
Задайте `OPENSEARCH_DISABLED_CATEGORIES=core_tools`, и вся основная группа выключится разом.
Какая авторизация поддерживается?
Базовая, роли IAM, заголовки и взаимный TLS (mTLS).
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыElasticsearch MCP подключает несколько поисковых кластеров: агент выбирает цель запроса по имени и работает в пределах доступа.
MCP-сервер дает агенту поиск и ответы по локальным документам с гибридным индексом, повторным ранжированием и ссылками на разделы.
Официальный MCP-сервер MongoDB: запросы и агрегации к базам, управление индексами, кластерами Atlas и локальными развертываниями
MCP-сервер для поиска и загрузки научных статей из arXiv, PubMed, bioRxiv, Semantic Scholar и других открытых источников
MCP-сервер с набором инструментов для сводок по миру: рынки, отчеты SEC, конфликты, климат и новости из открытых источников
MCP-сервер для доступа агента к MySQL: чтение схемы и запросы, по умолчанию только на чтение, запись включается флагами
Коротко о README
Проект с официальным MCP-сервером для OpenSearch, который запускается по stdio и по сети и умеет подключаться к кластеру разными способами авторизации.