v1.0.0
A Model Context Protocol server for Elasticsearch, over the stdio transport. Written in JavaScript with JSDoc types checked by TypeScript — no build step. Read-only by default, with optional write tools.
Highlights
- Elasticsearch 8.x and 9.x support. Both client majors are bundled; the matching one is auto-detected at startup (or pinned via
ELASTICSEARCH_API_VERSION), so a 9.x client'scompatible-with=9header never trips up an 8.x cluster. - Base-path aware. Works against deployments served behind a reverse proxy under a path (e.g.
https://host/elasticsearch) — something the official client drops silently. - Graceful privilege degradation. Built for restricted, index-scoped API keys:
list_indicesfalls back to_resolve/indexwithout clustermonitor, andget_mappingfalls back to_field_capswithoutview_index_metadata. Authorization failures surface
clear, actionable errors.