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 pip para 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.