A Model Context Protocol (MCP) server implementation that provides Elasticsearch interaction. This server enables searching documents, analyzing indices, and managing cluster through a set of tools.
https://github.com/user-attachments/assets/f7409e31-fac4-4321-9c94-b0ff2ea7ff15
list_indices
: List all indices in the Elasticsearch cluster.get_mapping
: Retrieve the mapping configuration for a specific index.get_settings
: Get the settings configuration for a specific index.search_documents
: Search documents in an index using Elasticsearch Query DSL.get_cluster_health
: Get health status of the cluster.get_cluster_stats
: Get statistical information about the cluster.Start the Elasticsearch cluster using Docker Compose:
docker-compose up -d
This will start a 3-node Elasticsearch cluster and Kibana. Default Elasticsearch username elastic
, password test123
.
You can access Kibana from https://localhost:5601.
claude_desktop_config.json
:{
"mcpServers": {
"elasticsearch": {
"command": "uv",
"args": [
"--directory",
"path/to/elasticsearch_mcp_server/src",
"run",
"server.py"
],
"env": {
"ELASTIC_HOST": "<your_elastic_url>",
"ELASTIC_USERNAME": "<your_elastic_username>",
"ELASTIC_PASSWORD": "<your_elastic_password>>"
}
}
}
}
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%/Claude/claude_desktop_config.json
Now you can interact with your Elasticsearch cluster through Claude using natural language commands like:
Seamless access to top MCP servers powering the future of AI integration.