Elasticsearch 7.x Integration
STDIOMCP server providing compatibility with Elasticsearch 7.x for basic operations and search functionality.
MCP server providing compatibility with Elasticsearch 7.x for basic operations and search functionality.
An MCP server for Elasticsearch 7.x, providing compatibility with Elasticsearch 7.x versions.
To install Elasticsearch 7.x MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @imlewc/elasticsearch7-mcp-server --client claude
pip install -e .
The server requires the following environment variables:
ELASTIC_HOST
: Elasticsearch host address (e.g., http://localhost:9200)ELASTIC_USERNAME
: Elasticsearch usernameELASTIC_PASSWORD
: Elasticsearch passwordMCP_PORT
: (Optional) MCP server listening port, default 9999.env
file and set ELASTIC_PASSWORD
:ELASTIC_PASSWORD=your_secure_password
docker-compose up -d
This will start a three-node Elasticsearch 7.17.10 cluster, Kibana, and the MCP server.
You can use any MCP client to connect to the MCP server:
from mcp import MCPClient client = MCPClient("localhost:9999") response = client.call("es-ping") print(response) # {"success": true}
Currently supported MCP methods:
es-ping
: Check Elasticsearch connectiones-info
: Get Elasticsearch cluster informationes-search
: Search documents in Elasticsearch index# Basic search search_response = client.call("es-search", { "index": "my_index", "query": { "match": { "title": "search keywords" } }, "size": 10, "from": 0 })
# Aggregation query agg_response = client.call("es-search", { "index": "my_index", "size": 0, # Only need aggregation results, no documents "aggs": { "categories": { "terms": { "field": "category.keyword", "size": 10 } }, "avg_price": { "avg": { "field": "price" } } } })
# Advanced search with highlighting, sorting, and filtering advanced_response = client.call("es-search", { "index": "my_index", "query": { "bool": { "must": [ {"match": {"content": "search term"}} ], "filter": [ {"range": {"price": {"gte": 100, "lte": 200}}} ] } }, "sort": [ {"date": {"order": "desc"}}, "_score" ], "highlight": { "fields": { "content": {} } }, "_source": ["title", "date", "price"] })
elasticsearch7-mcp-server
[License in LICENSE file]