Elastic MCP
Interaja com um cluster Elasticsearch por meio do Model Context Protocol (MCP), permitindo que clientes consultem, gerenciem e analisem dados.
Documentação
Demonstração
https://github.com/user-attachments/assets/907c3f6f-807c-4805-879a-649c74804c29
Elastic MCP
Conecte-se ao seu cluster Elasticsearch a partir de qualquer cliente compatível com MCP (como o Claude Desktop) usando o Model Context Protocol (MCP). Este servidor expõe seus dados e operações do Elasticsearch por meio da interface MCP, permitindo que agentes e aplicações consultem, gerenciem e analisem seus dados por meio de interações em linguagem natural.
1. Configuração
Pré-requisitos
- Python 3.8+
- Elasticsearch em execução e acessível
- uv ou
pippara gerenciamento de dependências
Instalar dependências
Usando o gerenciador de pacotes uv:
uv pip install -r requirements.txt
2. Executando o Servidor MCP
Teste usando o MCP Inspector
ELASTIC_URL="http://localhost:9200" ELASTIC_USERNAME="your_username" ELASTIC_PASSWORD="your_password" fastmcp dev tools/elastic_tool.py
ou
Execute o servidor mcp com
ELASTIC_URL="http://localhost:9200" ELASTIC_USERNAME="elastic" ELASTIC_PASSWORD="hKsXqDsd" python3 tools/elastic_tool.py
e execute o cliente mcp em outro terminal com
python3 mcp_client.py
ou
Adicione ao Claude Desktop editando o claude_desktop_config.json e adicione o seguinte trecho de código
{
"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. Ferramentas Fornecidas
- search_index: Pesquisar um índice com uma string de consulta.
- list_indices: Listar todos os índices (excluindo índices do sistema).
- get_index_mappings: Obter mapeamentos para um índice específico.
4. Licença
Licença MIT
5. Notas
- Para produção, não codifique credenciais em texto fixo.
- Para mais informações sobre MCP, consulte a documentação do FastMCP.