Elastic MCP
Interact with an Elasticsearch cluster via the Model Context Protocol (MCP), enabling clients to query, manage, and analyze data.
Demo
https://github.com/user-attachments/assets/907c3f6f-807c-4805-879a-649c74804c29
Elastic MCP
Connect to your Elasticsearch cluster from any MCP-compatible client (such as Claude Desktop) using the Model Context Protocol (MCP). This server exposes your Elasticsearch data and operations via the MCP interface, enabling agents and applications to query, manage, and analyze your data through natural language interactions.
1. Setup
Prerequisites
- Python 3.8+
- Elasticsearch running and accessible
- uv or
pipfor dependency management
Install dependencies
Using uv package manager:
uv pip install -r requirements.txt
2. Running the MCP Server
Test using MCP Inspector
ELASTIC_URL="http://localhost:9200" ELASTIC_USERNAME="your_username" ELASTIC_PASSWORD="your_password" fastmcp dev tools/elastic_tool.py
or
Run the mcp server by
ELASTIC_URL="http://localhost:9200" ELASTIC_USERNAME="elastic" ELASTIC_PASSWORD="hKsXqDsd" python3 tools/elastic_tool.py
and run mcp client in another terminal by
python3 mcp_client.py
or
Add to the Claude Desktop by editing the claude_desktop_config.json and add the following code snippet
{
"mcpServers": {
"Elastic MCP Server": {
"command": "uv",
"args": [
"run",
"--with-requirements",
"<absolute path to requirements.txt>",
"fastmcp",
"run",
"<absolute path to elastic_tool.py>"
],
"env": {
"ELASTIC_URL": "http://localhost:9200",
"ELASTIC_USERNAME": "your_username",
"ELASTIC_PASSWORD": "your_password"
}
}
}
}
3. Tools Provided
- search_index: Search an index with a query string.
- list_indices: List all indices (excluding system indices).
- get_index_mappings: Get mappings for a specific index.
4. License
MIT License
5. Notes
- For production, do not hardcode credentials.
- For more info on MCP, see FastMCP documentation.
Related Servers
Self-Hosted Supabase MCP Server
Interact with self-hosted Supabase instances for database introspection, management, and interaction.
mcp-parseable-server
MCP server for Parseable observability platform
MCP Database Server
Provides database access, supporting SQLite, SQL Server, PostgreSQL, and MySQL.
MCP-PostgreSQL-Ops
MCP-PostgreSQL-Ops is a professional MCP server for PostgreSQL database operations, monitoring, and management. Supports PostgreSQL 12-17 with comprehensive database analysis, performance monitoring, and intelligent maintenance recommendations through natural language queries.
Supabase
Interact with Supabase databases, storage, and edge functions.
ODBC MCP Server
Enables LLM tools to query databases using ODBC connections.
Loki MCP Server
An MCP server for querying logs from Grafana Loki.
Baserow
Read and write access to your Baserow tables.
MCP Football Server
Provides football (soccer) data using the API-Football service.
Rails PG Extras MCP
An MCP interface for the rails-pg-extras gem, providing PostgreSQL metadata and performance analysis through LLM prompts.