Elasticsearch 7.x MCP Server
An MCP server for Elasticsearch 7.x, providing compatibility with Elasticsearch 7.x versions.
Features
- Provides an MCP protocol interface for interacting with Elasticsearch 7.x
- Supports basic Elasticsearch operations (ping, info, etc.)
- Supports complete search functionality, including aggregation queries, highlighting, sorting, and other advanced features
- Easily access Elasticsearch functionality through any MCP client
Requirements
- Python 3.10+
- Elasticsearch 7.x (7.17.x recommended)
Installation
Installing via Smithery
To install Elasticsearch 7.x MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @imlewc/elasticsearch7-mcp-server --client claude
Manual Installation
pip install -e .
Environment Variables
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
Using Docker Compose
- Create a
.envfile and setELASTIC_PASSWORD:
ELASTIC_PASSWORD=your_secure_password
- Start the services:
docker-compose up -d
This will start a three-node Elasticsearch 7.17.10 cluster, Kibana, and the MCP server.
Using an MCP Client
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}
API Documentation
Currently supported MCP methods:
es-ping: Check Elasticsearch connectiones-info: Get Elasticsearch cluster informationes-search: Search documents in Elasticsearch index
Search API Examples
Basic Search
# Basic search
search_response = client.call("es-search", {
"index": "my_index",
"query": {
"match": {
"title": "search keywords"
}
},
"size": 10,
"from": 0
})
Aggregation Query
# 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
# 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"]
})
Development
- Clone the repository
- Install development dependencies
- Run the server:
elasticsearch7-mcp-server
License
[License in LICENSE file]
中文文档
Elasticsearch 7.x MCP Server
Project Details
- imlewc/elasticsearch7-mcp-server
- Apache License 2.0
- Last Updated: 4/13/2025
Recomended MCP Servers
Connect a bitcoin lightning wallet to your LLM using Nostr Wallet Connect and Model Context Protocol
🧠 High-performance persistent memory system for Model Context Protocol (MCP) powered by libSQL. Features vector search, semantic knowledge...
JS/TS SDKs for Bucket.co
基于 MCP 协议的腾讯云 COS MCP Server,无需编码即可让大模型快速接入腾讯云存储 (COS) 和数据万象 (CI) 能力。
MultiStep MCP That Returns CVE Information With EPSS Score
MCP Server for the Slidespeak API. Create PowerPoint Presentations using MCP.
PortOne MCP Server for Developers
MCP for Ansible, Terraform, LocalStack, and other IaC tools. Create and iterate IaC
A macOS AppleScript MCP server





