A Model Context Protocol (MCP) server for Elasticsearch operations, providing a comprehensive set of tools for interacting with Elasticsearch clusters through the standardized Model Context…
elasticsearch-mcp is an MCP project maintained in the octodet/elasticsearch-mcp repository. The maintainer describes its purpose as “A Model Context Protocol (MCP) server for Elasticsearch operations, providing a comprehensive set of tools for interacting with Elasticsearch clusters through the standardized Model Context…”. Read the project documentation for the complete scope.
The documented npm package is @octodet/elasticsearch-mcp. The configuration below comes from the maintainer’s example; adapt its paths and account values to your environment.
The example declares ES_URL, ES_API_KEY, ES_VERSION. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.
Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| indexPattern | optional, string): Pattern to filter indices (e.g., "logs-_", "my-index-_") |
| index | required, string): The index to count documents in |
| queryBody | required, object): The Elasticsearch query DSL body |
| highlight | optional, boolean): Enable search result highlighting (default: true) |
| document | conditional, object): Document content (required for index/create/update operations) |
| id | optional, string): Document ID (required for update/delete, optional for index/create) |
| query | optional, object): Elasticsearch query to filter documents for counting |
| script | required, object): Script to execute for updating matched documents |
| conflicts | optional, string): How to handle version conflicts ("abort" or "proceed", default: "abort") |
| refresh | optional, boolean): Whether to refresh the index after the operation (default: false) |
| operations | required, array): Array of operation objects, each containing: |
| action | required, string): The operation type ("index", "create", "update", or "delete") |
| settings | optional, object): Index settings like number of shards, replicas, etc. |
| mappings | optional, object): Field mappings defining how documents should be indexed |
{
"mcpServers": {
"elasticsearch": {
"command": "npx",
"args": [
"-y",
"@octodet/elasticsearch-mcp"
],
"env": {
"ES_URL": "http://localhost:9200",
"ES_API_KEY": "YOUR_ES_API_KEY",
"ES_VERSION": "8"
}
}
}
}From the project documentation. Replace placeholders and example paths before connecting.
| Variable | Description | Required |
|---|---|---|
| ES_URL | Declared in the maintainer’s client configuration. | Check documentation |
| ES_API_KEY | Declared in the maintainer’s client configuration. | Check documentation |
| ES_VERSION | Declared in the maintainer’s client configuration. | Check documentation |
Inspect PostgreSQL schemas and run read-only queries with the archived MCP reference server. Review its maintenance status before choosing it.
Connect the Notion MCP server to search workspace content and work with pages and databases through Notion’s hosted OAuth service.
Use the Supabase MCP server to inspect database schemas, query project data and retrieve docs through a project-scoped connection.
Query, modify and analyse local SQLite databases in conversation — the fastest way to chat with a data file.
Metabase ships its own MCP endpoint — search your BI content, build and run queries, and save questions and dashboards without leaving the chat.
Official MongoDB server covering data, schemas and Atlas management — from find queries to spinning up clusters.