Skip to main content
Glama
cr7258

Elasticsearch MCP Server

Сервер Elasticsearch/OpenSearch MCP

значок кузнеца

Обзор

Реализация сервера Model Context Protocol (MCP), которая обеспечивает взаимодействие Elasticsearch и OpenSearch. Этот сервер позволяет искать документы, анализировать индексы и управлять кластером с помощью набора инструментов.

Related MCP server: OpenSearch MCP Server

Демо

https://github.com/user-attachments/assets/f7409e31-fac4-4321-9c94-b0ff2ea7ff15

Функции

Общие операции

  • general_api_request : Выполнить общий запрос HTTP API. Используйте этот инструмент для любого API Elasticsearch/OpenSearch, у которого нет специального инструмента.

Индексные операции

  • list_indices : Список всех индексов.

  • get_index : Возвращает информацию (сопоставления, настройки, псевдонимы) об одном или нескольких индексах.

  • create_index : Создать новый индекс.

  • delete_index : Удалить индекс.

Операции с документами

  • search_documents : Поиск документов.

  • index_document : Создает или обновляет документ в индексе.

  • get_document : Получить документ по идентификатору.

  • delete_document : Удалить документ по идентификатору.

  • delete_by_query : Удаляет документы, соответствующие предоставленному запросу.

Кластерные операции

  • get_cluster_health : возвращает основную информацию о состоянии кластера.

  • get_cluster_stats : возвращает общий обзор статистики кластера.

Операции под псевдонимом

  • list_aliases : Список всех псевдонимов.

  • get_alias : Получить информацию о псевдониме для определенного индекса.

  • put_alias : создать или обновить псевдоним для определенного индекса.

  • delete_alias : Удалить псевдоним для определенного индекса.

Настроить переменные среды

Скопируйте файл .env.example в .env и обновите значения соответствующим образом.

Запустите кластер Elasticsearch/OpenSearch с помощью Docker Compose:

# For Elasticsearch docker-compose -f docker-compose-elasticsearch.yml up -d # For OpenSearch docker-compose -f docker-compose-opensearch.yml up -d

Имя пользователя Elasticsearch по умолчанию — elastic , а пароль — test123 . Имя пользователя OpenSearch по умолчанию — admin , а пароль — admin .

Доступ к панелям управления Kibana/OpenSearch можно получить по адресу http://localhost:5601 .

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

Вариант 1: Установка через Smithery

Чтобы автоматически установить Elasticsearch Server для Claude Desktop через Smithery :

npx -y @smithery/cli install elasticsearch-mcp-server --client claude

Вариант 2: Использование uvx

Использование uvx автоматически установит пакет из PyPI, нет необходимости клонировать репозиторий локально. Добавьте следующую конфигурацию в файл конфигурации Claude Desktop claude_desktop_config.json .

// For Elasticsearch { "mcpServers": { "elasticsearch-mcp-server": { "command": "uvx", "args": [ "elasticsearch-mcp-server" ], "env": { "ELASTICSEARCH_HOSTS": "https://localhost:9200", "ELASTICSEARCH_USERNAME": "elastic", "ELASTICSEARCH_PASSWORD": "test123" } } } } // For OpenSearch { "mcpServers": { "opensearch-mcp-server": { "command": "uvx", "args": [ "opensearch-mcp-server" ], "env": { "OPENSEARCH_HOSTS": "https://localhost:9200", "OPENSEARCH_USERNAME": "admin", "OPENSEARCH_PASSWORD": "admin" } } } }

Вариант 3: Использование УФ-излучения с локальной проявкой

Использование uv требует локального клонирования репозитория и указания пути к исходному коду. Добавьте следующую конфигурацию в файл конфигурации Claude Desktop claude_desktop_config.json .

// For Elasticsearch { "mcpServers": { "elasticsearch-mcp-server": { "command": "uv", "args": [ "--directory", "path/to/src/elasticsearch_mcp_server", "run", "elasticsearch-mcp-server" ], "env": { "ELASTICSEARCH_HOSTS": "https://localhost:9200", "ELASTICSEARCH_USERNAME": "elastic", "ELASTICSEARCH_PASSWORD": "test123" } } } } // For OpenSearch { "mcpServers": { "opensearch-mcp-server": { "command": "uv", "args": [ "--directory", "path/to/src/elasticsearch_mcp_server", "run", "opensearch-mcp-server" ], "env": { "OPENSEARCH_HOSTS": "https://localhost:9200", "OPENSEARCH_USERNAME": "admin", "OPENSEARCH_PASSWORD": "admin" } } } }
  • В macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • В Windows: %APPDATA%/Claude/claude_desktop_config.json

Перезапустите Claude Desktop, чтобы загрузить новый сервер MCP.

Теперь вы можете взаимодействовать с кластером Elasticsearch/OpenSearch через Claude, используя команды естественного языка, например:

  • «Список всех индексов в кластере»

  • «Сколько лет студенту Бобу?»

  • «Покажите мне состояние работоспособности кластера»

Использование с клиентом Anthropic MCP

uv run mcp_client/client.py src/server.py

Лицензия

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

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/cr7258/elasticsearch-mcp-server'

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