Skip to main content
Glama

Elasticsearch MCP Server

Elasticsearch/OpenSearch MCP-Server

Schmiedeabzeichen

Überblick

Eine Model Context Protocol (MCP)-Serverimplementierung, die die Interaktion mit Elasticsearch und OpenSearch ermöglicht. Dieser Server ermöglicht die Suche nach Dokumenten, die Analyse von Indizes und die Verwaltung von Clustern mithilfe einer Reihe von Tools.

Related MCP server: OpenSearch MCP Server

Demo

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

Merkmale

Allgemeine Vorgänge

  • general_api_request : Führen Sie eine allgemeine HTTP-API-Anfrage aus. Verwenden Sie dieses Tool für alle Elasticsearch/OpenSearch-APIs, für die kein dediziertes Tool vorhanden ist.

Indexvorgänge

  • list_indices : Listet alle Indizes auf.

  • get_index : Gibt Informationen (Zuordnungen, Einstellungen, Aliase) zu einem oder mehreren Indizes zurück.

  • create_index : Erstellen Sie einen neuen Index.

  • delete_index : Löscht einen Index.

Dokumentvorgänge

  • search_documents : Suche nach Dokumenten.

  • index_document : Erstellt oder aktualisiert ein Dokument im Index.

  • get_document : Ruft ein Dokument nach ID ab.

  • delete_document : Löscht ein Dokument anhand der ID.

  • delete_by_query : Löscht Dokumente, die der angegebenen Abfrage entsprechen.

Cluster-Operationen

  • get_cluster_health : Gibt grundlegende Informationen zum Zustand des Clusters zurück.

  • get_cluster_stats : Gibt eine allgemeine Übersicht über die Clusterstatistiken zurück.

Alias-Operationen

  • list_aliases : Listet alle Aliase auf.

  • get_alias : Ruft Aliasinformationen für einen bestimmten Index ab.

  • put_alias : Erstellen oder aktualisieren Sie einen Alias für einen bestimmten Index.

  • delete_alias : Löscht einen Alias für einen bestimmten Index.

Konfigurieren von Umgebungsvariablen

Kopieren Sie die Datei .env.example nach .env und aktualisieren Sie die Werte entsprechend.

Starten Sie den Elasticsearch/OpenSearch-Cluster

Starten Sie den Elasticsearch/OpenSearch-Cluster mit Docker Compose:

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

Der Standardbenutzername für Elasticsearch lautet elastic und das Passwort lautet test123 . Der Standardbenutzername für OpenSearch lautet admin und das Passwort lautet admin .

Sie können über http://localhost:5601 auf Kibana/OpenSearch-Dashboards zugreifen.

Verwendung mit Claude Desktop

Option 1: Installation über Smithery

So installieren Sie Elasticsearch Server für Claude Desktop automatisch über Smithery :

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

Option 2: Verwendung von uvx

Mit uvx wird das Paket automatisch von PyPI installiert. Ein lokales Klonen des Repositorys ist nicht erforderlich. Fügen Sie die folgende Konfiguration zur Konfigurationsdatei claude_desktop_config.json von Claude Desktop hinzu.

// 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" } } } }

Option 3: Verwenden von UV mit lokaler Entwicklung

Die Verwendung von uv erfordert das lokale Klonen des Repositorys und die Angabe des Pfads zum Quellcode. Fügen Sie die folgende Konfiguration zur Konfigurationsdatei claude_desktop_config.json von Claude Desktop hinzu.

// 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" } } } }
  • Unter macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

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

Starten Sie Claude Desktop neu, um den neuen MCP-Server zu laden.

Jetzt können Sie über Claude mit Ihrem Elasticsearch/OpenSearch-Cluster interagieren, indem Sie Befehle in natürlicher Sprache verwenden wie:

  • "Alle Indizes im Cluster auflisten"

  • „Wie alt ist der Schüler Bob?“

  • „Zeigen Sie mir den Integritätsstatus des Clusters“

Verwendung mit dem Anthropic MCP Client

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

Lizenz

Dieses Projekt ist unter der Apache-Lizenz Version 2.0 lizenziert – Einzelheiten finden Sie in der Datei 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