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
Запустите кластер 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