JUHE API Marketplace
da1y avatar
MCP Server

Elasticsearch MCP Server

A Model Context Protocol server that enables LLMs to interact with Elasticsearch clusters, allowing them to manage indices and execute search queries using natural language.

2
GitHub Stars
8/23/2025
Last Updated
MCP Server Configuration
1{
2 "name": "elasticsearch",
3 "command": "npx",
4 "args": [
5 "-y",
6 "@modelcontextprotocol/server-elasticsearch",
7 "http://localhost: 9200"
8 ]
9}
JSON9 lines

README Documentation

Elasticsearch

A Model Context Protocol server for Elasticsearch clusters. Enables LLMs to manage indices and execute queries.

IMPORTANT NOTE : this was built mainly by feeding examples to claude from the postgres mcp server.

Components

Tools

  • search

    • Execute search queries against indices
    • Input:
      • index (string): Target index name
      • query (object): Elasticsearch query DSL
    • Returns search hits
  • create_index

    • Create new Elasticsearch indices
    • Input:
      • index (string): Index name
      • mappings (object, optional): Index mappings configuration
      • settings (object, optional): Index settings configuration
  • list_indices

    • List all available indices
    • No input required
    • Returns array of index information
  • index_document

    • Index a document
    • Input:
      • index (string): Target index name
      • id (string, optional): Document ID
      • document (object): Document content
    • Returns indexing operation result

Resources

The server provides mapping information for each index:

  • Index Mappings (elasticsearch://<host>/<index>/schema)
    • JSON mapping information
    • Field names, types and configurations
    • Automatically discovered from metadata

Usage with Claude Desktop

Add to the "mcpServers" section of your claude_desktop_config.json:

{
  "mcpServers": {
    "elasticsearch": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-elasticsearch",
        "http://localhost:9200"
      ]
    }
  }
}

Docker one liner to run container :

docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e "xpack.security.enabled=false" docker.elastic.co/elasticsearch/elasticsearch:8.11.3

Replace the URL with your Elasticsearch endpoint.

License

Licensed under MIT License. Free to use, modify, and distribute. See LICENSE file for details.

Quick Install

Quick Actions

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source