Skip to main content
Glama

Elasticsearch MCP Server

Apache 2.0
127
  • Apple

Elasticsearch/OpenSearch MCP 서버

개요

Elasticsearch와 OpenSearch 간의 상호작용을 제공하는 모델 컨텍스트 프로토콜(MCP) 서버 구현입니다. 이 서버는 다양한 도구를 통해 문서 검색, 인덱스 분석, 클러스터 관리를 지원합니다.

데모

https://github.com/user-attachments/assets/f7409e31-fac4-4321-9c94-b0ff2ea7ff15

특징

일반 운영

  • general_api_request : 일반적인 HTTP API 요청을 수행합니다. 전용 도구가 없는 Elasticsearch/OpenSearch API에 이 도구를 사용하세요.

인덱스 작업

  • list_indices : 모든 인덱스를 나열합니다.
  • get_index : 하나 이상의 인덱스에 대한 정보(매핑, 설정, 별칭)를 반환합니다.
  • create_index : 새로운 인덱스를 생성합니다.
  • delete_index : 인덱스를 삭제합니다.

문서 작업

  • search_documents : 문서를 검색합니다.
  • index_document : 인덱스에 문서를 생성하거나 업데이트합니다.
  • get_document : ID로 문서를 가져옵니다.
  • delete_document : ID로 문서를 삭제합니다.
  • delete_by_query : 제공된 쿼리와 일치하는 문서를 삭제합니다.

클러스터 작업

  • get_cluster_health : 클러스터 상태에 대한 기본 정보를 반환합니다.
  • get_cluster_stats : 클러스터 통계의 개요를 반환합니다.

별칭 작업

  • list_aliases : 모든 별칭을 나열합니다.
  • get_alias : 특정 인덱스에 대한 별칭 정보를 가져옵니다.
  • put_alias : 특정 인덱스에 대한 별칭을 만들거나 업데이트합니다.
  • delete_alias : 특정 인덱스의 별칭을 삭제합니다.

환경 변수 구성

.env.example 파일을 .env 로 복사하고 값을 적절히 업데이트합니다.

Elasticsearch/OpenSearch 클러스터 시작

Docker Compose를 사용하여 Elasticsearch/OpenSearch 클러스터를 시작합니다.

지엑스피1

Elasticsearch의 기본 사용자 이름은 elastic 이고 비밀번호는 test123 입니다. OpenSearch의 기본 사용자 이름은 admin 이고 비밀번호는 admin 입니다.

http://localhost:5601 에서 Kibana/OpenSearch 대시보드에 액세스할 수 있습니다.

Claude Desktop과 함께 사용

옵션 1: Smithery를 통해 설치

Smithery를 통해 Claude Desktop에 Elasticsearch Server를 자동으로 설치하려면:

npx -y @smithery/cli install elasticsearch-mcp-server --client claude

옵션 2: uvx 사용

uvx 사용하면 PyPI에서 패키지가 자동으로 설치되므로 로컬 저장소를 복제할 필요가 없습니다. Claude Desktop의 설정 파일 claude_desktop_config.json 에 다음 설정을 추가하세요.

// For Elasticsearch { "mcpServers": { "elasticsearch-mcp-server": { "command": "uvx", "args": [ "elasticsearch-mcp-server" ], "env": { "ELASTICSEARCH_HOSTS": "https://localhost:9200", "ELASTICSEARCH_USERNAME": "elastic", "ELASTICSEARCH_PASSWORD": "test123" } } } } // For OpenSearch { "mcpServers": { "opensearch-mcp-server": { "command": "uvx", "args": [ "opensearch-mcp-server" ], "env": { "OPENSEARCH_HOSTS": "https://localhost:9200", "OPENSEARCH_USERNAME": "admin", "OPENSEARCH_PASSWORD": "admin" } } } }

옵션 3: 로컬 개발에 uv 사용

uv 사용하려면 로컬 저장소를 복제하고 소스 코드 경로를 지정해야 합니다. Claude Desktop의 설정 파일 claude_desktop_config.json 에 다음 설정을 추가하세요.

// For Elasticsearch { "mcpServers": { "elasticsearch-mcp-server": { "command": "uv", "args": [ "--directory", "path/to/src/elasticsearch_mcp_server", "run", "elasticsearch-mcp-server" ], "env": { "ELASTICSEARCH_HOSTS": "https://localhost:9200", "ELASTICSEARCH_USERNAME": "elastic", "ELASTICSEARCH_PASSWORD": "test123" } } } } // For OpenSearch { "mcpServers": { "opensearch-mcp-server": { "command": "uv", "args": [ "--directory", "path/to/src/elasticsearch_mcp_server", "run", "opensearch-mcp-server" ], "env": { "OPENSEARCH_HOSTS": "https://localhost:9200", "OPENSEARCH_USERNAME": "admin", "OPENSEARCH_PASSWORD": "admin" } } } }
  • macOS의 경우: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows의 경우: %APPDATA%/Claude/claude_desktop_config.json

새로운 MCP 서버를 로드하려면 Claude Desktop을 다시 시작하세요.

이제 Claude를 통해 다음과 같은 자연어 명령을 사용하여 Elasticsearch/OpenSearch 클러스터와 상호 작용할 수 있습니다.

  • "클러스터의 모든 인덱스를 나열합니다"
  • "학생 밥은 몇 살이에요?"
  • "클러스터 상태 보여주세요"

Anthropic MCP 클라이언트와 함께 사용

uv run mcp_client/client.py src/server.py

특허

이 프로젝트는 Apache 라이선스 버전 2.0에 따라 라이선스가 부여되었습니다. 자세한 내용은 LICENSE 파일을 참조하세요.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

사용자가 모델 컨텍스트 프로토콜 서버와 자연어 명령을 통해 인덱스 작업, 문서 검색 및 클러스터 관리를 수행할 수 있도록 하여 Elasticsearch 클러스터와의 상호 작용을 용이하게 합니다.

  1. 개요
    1. 데모
      1. 특징
        1. 일반 운영
        2. 인덱스 작업
        3. 문서 작업
        4. 클러스터 작업
        5. 별칭 작업
      2. 환경 변수 구성
        1. Elasticsearch/OpenSearch 클러스터 시작
          1. Claude Desktop과 함께 사용
            1. 옵션 1: Smithery를 통해 설치
            2. 옵션 2: uvx 사용
            3. 옵션 3: 로컬 개발에 uv 사용
          2. Anthropic MCP 클라이언트와 함께 사용
            1. 특허

              Related MCP Servers

              • -
                security
                F
                license
                -
                quality
                A Model Context Protocol server that enables LLMs to interact with Elasticsearch clusters, allowing them to manage indices and execute search queries using natural language.
                Last updated -
                1
                JavaScript
              • A
                security
                F
                license
                A
                quality
                Provides a scalable knowledge graph implementation for Model Context Protocol using Elasticsearch, enabling AI models to store and query information with advanced search capabilities, memory-like behavior, and multi-zone architecture.
                Last updated -
                17
                6
                TypeScript
              • A
                security
                A
                license
                A
                quality
                Provides an MCP protocol interface for interacting with Elasticsearch 7.x databases, supporting comprehensive search functionality including aggregations, highlighting, and sorting.
                Last updated -
                3
                1
                Python
                Apache 2.0
              • A
                security
                A
                license
                A
                quality
                Connects Claude and other MCP clients to Elasticsearch data, allowing users to interact with their Elasticsearch indices through natural language conversations.
                Last updated -
                3
                565
                241
                JavaScript
                Apache 2.0

              View all related MCP servers

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/cr7258/elasticsearch-mcp-server'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server