Сервер Elasticsearch MCP
Введение
Elasticsearch Model Context Protocol (MCP) Server — это серверное приложение, разработанное на основе Spring AI MCP. Оно предназначено для простого определения различных рабочих процессов обработки данных через MCP и эффективной индексации и поиска результатов в кластере Elasticsearch.
Основные характеристики
Автоматическая регистрация и выполнение инструмента MCP : функции, определенные с помощью аннотации
@Toolв среде Spring Boot, автоматически регистрируются на сервере MCP. Это позволяет внешним клиентам (например, Claude, FastMCP CLI) вызывать эти функции через стандартную связь на основе JSON-RPC.Интеграция с кластером Elasticsearch : использует официальный клиент Java Elasticsearch для простого вызова основных API Elasticsearch, таких как проверки работоспособности кластера, поиск по индексному отображению, индексация и поиск документов, а также предоставляет результаты в виде инструментов MCP.
Масштабируемая архитектура : модульная структура пакета обеспечивает гибкое разделение и управление настройками клиента для разных версий Elasticsearch. Она также разработана для легкого добавления новых инструментов или внешних функций интеграции.
Related MCP server: Kibana MCP Server
Доступные инструменты MCP
get_cluster_health: возвращает основную информацию о состоянии кластера Elasticsearch.get_cluster_statistics: получает полную статистику кластера, включая имя кластера, UUID, статус, роли узлов, использование ресурсов ОС и JVM, количество индексов и метрики шардов.get_cat_mappings: извлекает информацию о сопоставлении полей для определенного индекса Elasticsearch.get_cat_indices: Извлекает список всех индексов в Elasticsearch.get_cat_indices_by_name: извлекает список индексов, соответствующих указанному имени индекса или шаблону подстановочных знаков.get_cat_aliases: получает список всех псевдонимов в Elasticsearch.get_cat_aliases_by_name: извлекает список псевдонимов, соответствующих указанному имени псевдонима или шаблону подстановочных знаков.get_document_search_by_index: поиск документов в индексе Elasticsearch с использованием запросов DSL, сгенерированных ИИ.get_shard_allocation: возвращает информацию о распределении сегментов в кластере Elasticsearch.get_shard_allocation_for_node: возвращает информацию о распределении сегментов для определенного узла в кластере Elasticsearch.
Технологический стек
Язык : Java 17
Фреймворк : Spring Boot 3.4.5, Spring AI MCP
Поисковая система : Elasticsearch 7.16 или более поздняя версия
Инструмент сборки : Gradle 8.12
Предпосылки
Для создания и запуска этого проекта требуется следующее программное обеспечение:
JDK: Версия 17 или более поздняя
Запуск экземпляра Elasticsearch: версия 7.16 или более поздняя
Клиент MCP (например, Claude Desktop)
Установка и исполнение
Вот как настроить и запустить проект в локальной среде:
1. Клонировать исходный код
git clone https://github.com/silbaram/elasticsearch-mcp-server.git
cd elasticsearch-mcp-server2. Настройте application.yml в модуле mcp-server
Откройте файл application.yml , расположенный в mcp-server/src/main/resources/application.yml чтобы настроить информацию о кластере Elasticsearch.
elasticsearch:
version: "8.6.1" # Specifies the version of the Elasticsearch cluster to connect to.
search:
hosts:
- http://localhost:9200 # Specifies the access address of the Elasticsearch cluster.3. Строить
Для сборки проекта используйте следующую команду:
./gradlew buildСобранный JAR-файл можно найти в каталоге
mcp-server/build/libs/.
4. Настройте MCP-клиент
Запустите свой клиент MCP. (Список клиентов MCP можно найти на странице MCP Client List . В этом руководстве в качестве примера используется Claude Desktop.)
В меню настроек клиента MCP перейдите в раздел «Разработчик» > «Серверы MCP».
Нажмите кнопку «Изменить конфигурацию» и добавьте новую конфигурацию сервера MCP со следующим содержимым. (Необходимо использовать фактический путь к созданному ранее файлу JAR.)
{ "mcpServers": { "elasticsearch-server": { "command": "java", "args": [ "-Dusername=YOUR_USERNAME", "-Dpassword=YOUR_PASSWORD", "-jar", "/path/to/your/mcp-server.jar" ] } } }-Dusername(необязательно): указывает идентификатор пользователя, необходимый для доступа к кластеру Elasticsearch. (например,-Dusername=elastic)-Dpassword(необязательно): указывает пароль, необходимый для доступа к кластеру Elasticsearch. (например,-Dpassword=yoursecurepassword)/path/to/your/mcp-server.jar: Его необходимо заменить на фактический полный путь к созданному вами файлуmcp-server.jar.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/silbaram/elasticsearch-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
