Skip to main content
Glama

Elasticsearch MCP Server

Official
by elastic

Elasticsearch MCP-Server

Dieses Repository enthält experimentelle Funktionen, die für Forschung und Evaluierung bestimmt sind und nicht produktionsreif sind.

Stellen Sie mithilfe des Model Context Protocol (MCP) direkt von jedem MCP-Client (wie Claude Desktop) eine Verbindung zu Ihren Elasticsearch-Daten her.

Dieser Server verbindet Agenten über das Model Context Protocol mit Ihren Elasticsearch-Daten. Er ermöglicht Ihnen die Interaktion mit Ihren Elasticsearch-Indizes über natürliche Sprachkonversationen.

Verfügbare Tools

  • list_indices : Listet alle verfügbaren Elasticsearch-Indizes auf
  • get_mappings : Ruft Feldzuordnungen für einen bestimmten Elasticsearch-Index ab
  • search : Führen Sie eine Elasticsearch-Suche mit der bereitgestellten Abfrage-DSL durch
  • get_shards : Shard-Informationen für alle oder bestimmte Indizes abrufen

Voraussetzungen

  • Eine Elasticsearch-Instanz
  • Elasticsearch-Authentifizierungsdaten (API-Schlüssel oder Benutzername/Passwort)
  • MCP-Client (z. B. Claude Desktop)

Demo

https://github.com/user-attachments/assets/5dd292e1-a728-4ca7-8f01-1380d1bebe0c

Installation und Einrichtung

Verwenden des veröffentlichten NPM-Pakets

[!TIP] Am einfachsten lässt sich der Elasticsearch MCP-Server über das veröffentlichte npm-Paket verwenden.

  1. MCP-Client konfigurieren
    • Öffnen Sie Ihren MCP-Client. Sehen Sie sich die Liste der MCP-Clients an. Hier konfigurieren wir Claude Desktop.
    • Gehen Sie zu Einstellungen > Entwickler > MCP-Server
    • Klicken Sie auf Edit Config und fügen Sie einen neuen MCP-Server mit der folgenden Konfiguration hinzu:
    { "mcpServers": { "elasticsearch-mcp-server": { "command": "npx", "args": [ "-y", "@elastic/mcp-server-elasticsearch" ], "env": { "ES_URL": "your-elasticsearch-url", "ES_API_KEY": "your-api-key" } } } }
  2. Eine Unterhaltung beginnen
    • Öffnen Sie eine neue Konversation in Ihrem MCP-Client
    • Der MCP-Server sollte automatisch eine Verbindung herstellen
    • Sie können jetzt Fragen zu Ihren Elasticsearch-Daten stellen

Konfigurationsoptionen

Der Elasticsearch MCP-Server unterstützt Konfigurationsoptionen zum Herstellen einer Verbindung mit Ihrem Elasticsearch:

[!NOTE] Sie müssen zur Authentifizierung entweder einen API-Schlüssel oder sowohl Benutzernamen als auch Kennwort angeben.

UmgebungsvariableBeschreibungErforderlich
ES_URLDie URL Ihrer Elasticsearch-InstanzJa
ES_API_KEYElasticsearch-API-Schlüssel zur AuthentifizierungNEIN
ES_USERNAMEElasticsearch-Benutzername für die BasisauthentifizierungNEIN
ES_PASSWORDElasticsearch-Passwort für die BasisauthentifizierungNEIN
ES_CA_CERTPfad zum benutzerdefinierten CA-Zertifikat für Elasticsearch SSL/TLSNEIN

Lokale Entwicklung

[!NOTE] Wenn Sie den MCP-Server ändern oder erweitern möchten, befolgen Sie diese lokalen Entwicklungsschritte.

  1. Verwenden Sie die richtige Node.js-Version
    nvm use
  2. Abhängigkeiten installieren
    npm install
  3. Erstellen des Projekts
    npm run build
  4. Lokal in der Claude Desktop App ausführen
    • Öffnen Sie die Claude Desktop App
    • Gehen Sie zu Einstellungen > Entwickler > MCP-Server
    • Klicken Sie auf Edit Config und fügen Sie einen neuen MCP-Server mit der folgenden Konfiguration hinzu:
    { "mcpServers": { "elasticsearch-mcp-server-local": { "command": "node", "args": [ "/path/to/your/project/dist/index.js" ], "env": { "ES_URL": "your-elasticsearch-url", "ES_API_KEY": "your-api-key" } } } }
  5. Debuggen mit MCP Inspector
    ES_URL=your-elasticsearch-url ES_API_KEY=your-api-key npm run inspector
    Dadurch wird der MCP Inspector gestartet, mit dem Sie Anfragen debuggen und analysieren können. Folgendes sollte angezeigt werden:
    Starting MCP inspector... Proxy server listening on port 3000 🔍 MCP Inspector is up and running at http://localhost:5173 🚀

Beitragen

Wir freuen uns über Beiträge aus der Community! Weitere Informationen dazu, wie Sie beitragen können, finden Sie in den Richtlinien für Beiträge .

Beispielfragen

[!TIP] Hier sind einige Abfragen in natürlicher Sprache, die Sie mit Ihrem MCP-Client ausprobieren können.

  • „Welche Indizes habe ich in meinem Elasticsearch-Cluster?“
  • „Zeigen Sie mir die Feldzuordnungen für den Index ‚Produkte‘.“
  • „Finden Sie alle Bestellungen über 500 $ vom letzten Monat.“
  • „Welche Produkte haben die meisten 5-Sterne-Bewertungen erhalten?“

Wie es funktioniert

  1. Der MCP-Client analysiert Ihre Anfrage und ermittelt, welche Elasticsearch-Operationen erforderlich sind.
  2. Der MCP-Server führt diese Vorgänge aus (Auflisten von Indizes, Abrufen von Zuordnungen, Durchführen von Suchvorgängen).
  3. Der MCP-Client verarbeitet die Ergebnisse und präsentiert sie in einem benutzerfreundlichen Format.

Bewährte Sicherheitspraktiken

[!WARNING] Vermeiden Sie die Verwendung von Clusteradministratorberechtigungen. Erstellen Sie dedizierte API-Schlüssel mit begrenztem Umfang und wenden Sie eine differenzierte Zugriffssteuerung auf Indexebene an, um unbefugten Datenzugriff zu verhindern.

Sie können einen dedizierten Elasticsearch-API-Schlüssel mit minimalen Berechtigungen erstellen, um den Zugriff auf Ihre Daten zu kontrollieren:

POST /_security/api_key { "name": "es-mcp-server-access", "role_descriptors": { "mcp_server_role": { "cluster": [ "monitor" ], "indices": [ { "names": [ "index-1", "index-2", "index-pattern-*" ], "privileges": [ "read", "view_index_metadata" ] } ] } } }

Lizenz

Dieses Projekt ist unter der Apache-Lizenz 2.0 lizenziert.

Fehlerbehebung

  • Stellen Sie sicher, dass Ihre MCP-Konfiguration korrekt ist.
  • Stellen Sie sicher, dass Ihre Elasticsearch-URL von Ihrem Computer aus zugänglich ist.
  • Überprüfen Sie, ob Ihre Authentifizierungsdaten (API-Schlüssel oder Benutzername/Passwort) über die erforderlichen Berechtigungen verfügen.
  • Wenn Sie SSL/TLS mit einer benutzerdefinierten Zertifizierungsstelle verwenden, überprüfen Sie, ob der Zertifikatspfad korrekt ist und die Datei lesbar ist.
  • Suchen Sie in der Terminalausgabe nach Fehlermeldungen.

Wenn Sie auf Probleme stoßen, können Sie gerne ein Problem im GitHub-Repository öffnen.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Verbindet Claude und andere MCP-Clients mit Elasticsearch-Daten und ermöglicht Benutzern die Interaktion mit ihren Elasticsearch-Indizes über Konversationen in natürlicher Sprache.

  1. Verfügbare Tools
    1. Voraussetzungen
      1. Demo
        1. Installation und Einrichtung
          1. Verwenden des veröffentlichten NPM-Pakets
          2. Konfigurationsoptionen
          3. Lokale Entwicklung
        2. Beitragen
          1. Beispielfragen
            1. Wie es funktioniert
              1. Bewährte Sicherheitspraktiken
                1. Lizenz
                  1. Fehlerbehebung

                    Related MCP Servers

                    • A
                      security
                      A
                      license
                      A
                      quality
                      An MCP server implementation that integrates Claude with Salesforce, enabling natural language interactions with Salesforce data and metadata for querying, modifying, and managing objects and records.
                      Last updated -
                      7
                      18
                      4
                      TypeScript
                      MIT License
                      • Apple
                      • Linux
                    • A
                      security
                      A
                      license
                      A
                      quality
                      Provides an MCP protocol interface for interacting with Elasticsearch 7.x databases, supporting comprehensive search functionality including aggregations, highlighting, and sorting.
                      Last updated -
                      3
                      1
                      Python
                      Apache 2.0
                    • -
                      security
                      F
                      license
                      -
                      quality
                      An MCP server that integrates with Claude to provide smart documentation search capabilities across multiple AI/ML libraries, allowing users to retrieve and process technical information through natural language queries.
                      Last updated -
                      Python
                    • A
                      security
                      A
                      license
                      A
                      quality
                      An MCP server implementation that integrates Claude with Salesforce, enabling natural language interactions with Salesforce data and metadata.
                      Last updated -
                      8
                      18
                      TypeScript
                      MIT License
                      • Apple
                      • Linux

                    View all related MCP servers

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

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