← Retour à la liste
★★★½ 3.5 / 5
Catégorie 05MCP

MCP Elasticsearch

Interroger et administrer Elasticsearch depuis Claude

Installation
Docker Elasticsearch local (dev)docker run -d --name elasticsearch \ -e "discovery.type=single-node" \ -e "xpack.security.enabled=false" \ -p 9200:9200 \ docker.elastic.co/elasticsearch/elasticsearch:8.15.0
Installation MCP via npmclaude mcp add elasticsearch \ -e ELASTICSEARCH_URL=http://localhost:9200 \ -e ELASTICSEARCH_USERNAME=elastic \ -e ELASTICSEARCH_PASSWORD=ton_password \ -- npx -y @elastic/mcp-server-elasticsearch
Version@elastic/mcp-server-elasticsearch (communautaire)
PrixGratuit (open source)
Plateformes
WindowsmacOSLinux
Commandes5
Exemples3
MCP
À propos

Serveur MCP pour Elasticsearch permettant à Claude d'interroger les indices, lancer des recherches DSL, analyser les mappings et monitorer la santé du cluster. Alternative à Solr dans l'écosystème Drupal via Search API Elasticsearch Connector. Utile aussi pour les architectures ELK (logs + recherche unifiés).

Fonctionnalités clés
Recherche full-text et DSLExécuter des recherches Elasticsearch complexes (bool, must/should/filter, nested) depuis Claude. Tester des requêtes DSL et analyser les scores de pertinence sans client graphique.
Analyse des mappingsInspecter les mappings des indices (types de champs, analyzers, nested objects). Comprendre pourquoi une recherche Drupal ne retourne pas les bons résultats.
Monitoring du clusterVérifier la santé du cluster (green/yellow/red), l'état des shards, l'utilisation disque et les performances des noeuds. Diagnostiquer les problèmes de cluster sans Kibana.
Gestion des alias et re-indexationGérer les alias d'indices pour les re-indexations sans interruption de service. Switcher l'alias vers le nouvel indice une fois la re-indexation terminée.
Analyse de la pertinenceUtiliser _explain pour comprendre pourquoi un document est scoré d'une certaine façon. Améliorer la pertinence de la recherche Drupal via les boosts de champs.
Commandes
CommandeDescription
searchLancer une recherche dans un ou plusieurs indices
get mappingVoir le mapping d'un indice (types de champs, analyzers)
cluster healthVérifier la santé du cluster (green/yellow/red)
list indicesLister tous les indices avec leur taille et nombre de documents
explainExpliquer le score de pertinence d'un document pour une requête
Exemples
Débugger la pertinence de la recherche DrupalCODE
"Les résultats de recherche Drupal via Elasticsearch ne sont pas pertinents.
1. Interroge l'indice search_api_drupal pour la requête 'migration Drupal'
2. Utilise _explain sur le 5ème résultat pour voir son score
3. Analyse le mapping : comment sont indexés les champs title et body ?
4. Propose des boosts (title^5, body^1) pour améliorer la pertinence
5. Teste la requête avec les boosts et compare les scores"
Zero-downtime re-indexation avec aliasCODE
"Re-indexe l'indice Drupal sans interruption de service :
1. Crée le nouvel indice search_api_drupal_v2 avec le mapping optimisé
2. Lance la re-indexation via drush search-api:index
3. Vérifie la progression (document count dans le nouvel indice)
4. Switche l'alias drupal_current vers search_api_drupal_v2
5. Vérifie que la recherche fonctionne, puis supprime l'ancien indice"
Diagnostiquer un cluster en état yellowCODE
"Le cluster Elasticsearch est en état yellow depuis ce matin.
1. Vérifier la santé du cluster et identifier les shards non assignés
2. Lister les indices avec des shards en état UNASSIGNED
3. Vérifier l'espace disque disponible sur chaque noeud
4. Comprendre pourquoi les shards ne sont pas assignés (replicas, disk)
5. Proposer la correction (désactiver les replicas si single node)"
Points forts & faibles
Points forts
+API DSL très puissante pour les recherches complexes
+Monitoring cluster complet sans accès à Kibana
+Zero-downtime re-indexation avec les alias d'indices
+Analyse de pertinence avec _explain pour optimiser les résultats
Points faibles
MCP communautaire, qualité variable selon l'implémentation
Plus complexe à configurer que Solr pour les projets Drupal standard
Consommation mémoire JVM importante (minimum 2Go JVM heap)
Module contrib elasticsearch_connector moins mature que search_api_solr
Verdict

Pertinent pour les sites Drupal avec des volumes importants ou des besoins de recherche complexes. Pour les projets Drupal standard, search_api_solr reste plus battle-tested. Elasticsearch brille pour les architectures ELK unifiées (logs + recherche) ou les plateformes e-commerce avec des facettes avancées.

Développeurs Drupal sur des sites à fort volume de contenu ou des architectures ELK. Ingénieurs qui doivent débugger la pertinence de la recherche ou monitorer un cluster Elasticsearch.