[!CAUTION]
This MCP server is deprecated and will only receive critical security updates going forward.
It has been superseded by the Elastic Agent BuilderMCP endpoint, which is available in Elastic 9.2.0+ and Elasticsearch Serverless projects.
Use the Elasticsearch MCP Server for AI Agents
The Elasticsearch MCP Server connects your AI agents to Elasticsearch data using the (MCP).
It enables natural language interactions with your Elasticsearch indices, allowing agents to query, analyze, and retrieve data without custom APIs.
Docker installed and running in your AWS environment (for example, on an EC2 instance or in a container service)
An MCP client configured (such as Claude Desktop, Cursor, VS Code, or another MCP-compatible tool)
Network connectivity between your deployment environment and your Elasticsearch cluster
[!NOTE]
These instructions apply to Elasticsearch MCP Server 0.4.0 and later.
For versions 0.3.1 and earlier, refer to the README for v0.3.1.
Deploy the Elasticsearch MCP Server
The Elasticsearch MCP Server is provided as a Docker container image available from AWS Marketplace. You can run it using either the stdio protocol (for direct client connections) or the streamable-HTTP protocol (for web-based integrations).
Choose a protocol
The server supports two protocols:
stdio: Direct communication between the MCP client and server. Use this when your client supports stdio and runs in the same environment.
streamable-HTTP: HTTP-based protocol recommended for web integrations, stateful sessions, and concurrent clients.
Note: Server-Sent Events (SSE) is deprecated. Use streamable-HTTP instead.
Configure the stdio protocol
Use the stdio protocol when your MCP client connects directly to the server process.
Set environment variables for stdio mode
Set the following environment variables:
ES_URL: The URL of your Elasticsearch cluster (for example, https://your-cluster.es.amazonaws.com:9200)
For authentication, use one of these options:
API key: Set ES_API_KEY to your Elasticsearch API key
Basic authentication: Set ES_USERNAME and ES_PASSWORD to your Elasticsearch credentials
(Optional) ES_SSL_SKIP_VERIFY: Set to true to skip SSL/TLS certificate verification when connecting to Elasticsearch. Only use this for development or testing environments.
A successful response indicates the container can reach your Elasticsearch cluster.
Security and sensitive information
The Elasticsearch MCP Server handles authentication credentials securely:
Credential storage
API keys and passwords: Stored only in environment variables passed to the container. They are not persisted to disk or logged.
Environment variables: Set when you run the container. Use AWS Secrets Manager or AWS Systems Manager Parameter Store to manage credentials securely in production environments.
Data encryption
In transit: The MCP server communicates with Elasticsearch over HTTPS when your ES_URL uses the https:// protocol. Ensure your Elasticsearch cluster has SSL/TLS enabled.
At rest: The container does not store data locally. All data remains in your Elasticsearch cluster, which uses your cluster's encryption settings.
Best practices
Rotate API keys regularly (every 30-90 days for production environments)
Use API keys with minimal required permissions (read-only access to specific indices when possible)
Never commit credentials to version control or share them in logs
Use AWS Secrets Manager or Parameter Store to inject credentials at runtime instead of hardcoding them
AWS service quotas
The Elasticsearch MCP Server runs as a container in your AWS environment. Consider these AWS service quotas:
EC2 instance limits: If running on EC2, ensure your instance type supports your expected workload
Elastic Container Service (ECS): If using ECS, review ECS service quotas
Elastic Kubernetes Service (EKS): If using EKS, review EKS service quotas
Network bandwidth: Ensure sufficient network bandwidth between your container and Elasticsearch cluster
Once connected, the MCP server provides these tools to your agent:
list_indices: List all available Elasticsearch indices
get_mappings: Get field mappings for a specific Elasticsearch index
search: Perform an Elasticsearch search using query DSL
esql: Execute an ES|QL query
get_shards: Get shard information for all or specific indices
Your agent can use these tools to interact with your Elasticsearch data through natural language conversations.
Next steps
Learn about AI-powered features available in the Elastic platform
Explore Agent Builder for building custom AI agents with Elasticsearch
At a glance
Category
Coding
Pricing model
Free
Best for
ai-agents, mcp-server, search
What is Elasticsearch MCP Server? Elasticsearch MCP Server is a coding tool listed on Scriptiii AI Tools. Elastic MCP server for querying Elasticsearch indices from MCP clients. Pricing: Free. Free to use. Best for: ai-agents, mcp-server, search.
Questions & answers
Everything you need to know about Elasticsearch MCP Server
What is Elasticsearch MCP Server?
Elasticsearch MCP Server is a coding tool. Elastic MCP server for querying Elasticsearch indices from MCP clients.
What does Elasticsearch MCP Server cost?
Free. Free to use.
What is Elasticsearch MCP Server best for?
ai-agents, mcp-server, search. It is filed under Coding.