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.
Integrations
Connects to Elasticsearch clusters allowing interaction with indices through natural language, including listing indices, retrieving mappings, performing searches, managing index templates, bulk operations, reindexing data, and monitoring cluster health.
Elasticsearch MCP 서버
모든 MCP 클라이언트(예: Claude Desktop, Cursor)에서 Elasticsearch 클러스터에 직접 연결할 수 있는 MCP 서버입니다.
이 서버는 모델 컨텍스트 프로토콜(Model Context Protocol)을 사용하여 에이전트를 Elasticsearch 데이터에 연결합니다. 자연어 대화를 통해 Elasticsearch 인덱스와 상호 작용할 수 있습니다.
데모
기능 개요
사용 가능한 기능
클러스터 관리
elasticsearch_health
: Elasticsearch 클러스터 상태 정보를 가져오며, 선택적으로 인덱스 수준 세부 정보도 포함합니다.
인덱스 작업
list_indices
: 사용 가능한 Elasticsearch 인덱스를 나열하고 정규식을 지원합니다.create_index
: 선택적 설정 및 매핑을 사용하여 Elasticsearch 인덱스를 생성합니다.reindex
: 선택적 쿼리 및 스크립트를 사용하여 소스 인덱스에서 대상 인덱스로 데이터를 다시 인덱싱합니다.
매핑 관리
get_mappings
: 특정 Elasticsearch 인덱스에 대한 필드 매핑을 가져옵니다.create_mapping
: Elasticsearch 인덱스에 대한 매핑 구조를 생성하거나 업데이트합니다.
검색 및 데이터 운영
search
: 제공된 쿼리 DSL로 Elasticsearch 검색을 수행합니다.bulk
: Elasticsearch 인덱스에 대량 데이터 넣기
템플릿 관리
create_index_template
: 인덱스 템플릿을 생성하거나 업데이트합니다.get_index_template
: 인덱스 템플릿에 대한 정보를 가져옵니다.delete_index_template
: 인덱스 템플릿 삭제
작동 원리
- MCP 클라이언트는 귀하의 요청을 분석하고 어떤 Elasticsearch 작업이 필요한지 결정합니다.
- MCP 서버는 다음과 같은 작업(인덱스 나열, 매핑 가져오기, 검색 수행)을 수행합니다.
- MCP 클라이언트는 결과를 처리하여 사용자 친화적인 형식으로 표시합니다.
시작하기
필수 조건
- Elasticsearch 인스턴스
- Elasticsearch 인증 자격 증명(API 키 또는 사용자 이름/비밀번호)
- MCP 클라이언트(예: Claude Desktop, Cursor)
설치 및 설정
게시된 NPM 패키지 사용
[!TIP] Elasticsearch MCP 서버를 사용하는 가장 쉬운 방법은 게시된 npm 패키지를 사용하는 것입니다.
- MCP 클라이언트 구성
- MCP 클라이언트를 엽니다. MCP 클라이언트 목록을 확인하세요. 여기서는 Claude Desktop을 구성하고 있습니다.
- 설정 > 개발자 > MCP 서버 로 이동하세요.
Edit Config
클릭하고 다음 구성으로 새 MCP 서버를 추가합니다.
지엑스피1
- 대화 시작하기
- MCP 클라이언트에서 새로운 대화를 엽니다.
- MCP 서버는 자동으로 연결되어야 합니다.
- 이제 Elasticsearch 데이터에 대한 질문을 할 수 있습니다.
구성 옵션
Elasticsearch MCP 서버는 Elasticsearch에 연결하기 위한 구성 옵션을 지원합니다.
[!NOTE] 인증을 위해서는 API 키 또는 사용자 이름과 비밀번호를 모두 제공해야 합니다.
환경 변수 | 설명 | 필수의 |
---|---|---|
ES_HOST | Elasticsearch 인스턴스 URL(레거시 HOST 도 지원) | 예 |
ES_API_KEY | 인증을 위한 Elasticsearch API 키(레거시 API_KEY 도 지원) | 아니요 |
ES_USERNAME | 기본 인증을 위한 Elasticsearch 사용자 이름(레거시 USERNAME 도 지원) | 아니요 |
ES_PASSWORD | 기본 인증을 위한 Elasticsearch 비밀번호(레거시 PASSWORD 도 지원) | 아니요 |
ES_CA_CERT | Elasticsearch SSL/TLS에 대한 사용자 정의 CA 인증서 경로(레거시 CA_CERT 도 지원) | 아니요 |
지역 개발
[!NOTE] MCP 서버를 수정하거나 확장하려면 다음 로컬 개발 단계를 따르세요.
- 올바른 Node.js 버전을 사용하세요Copy
- 종속성 설치Copy
- 프로젝트 빌드Copy
- Claude Desktop App에서 로컬로 실행
- 클로드 데스크톱 앱 열기
- 설정 > 개발자 > MCP 서버 로 이동하세요.
Edit Config
클릭하고 다음 구성으로 새 MCP 서버를 추가합니다: GXP5
- 커서 편집기에서 로컬로 실행
- 커서 편집기 열기
- 커서 설정 > MCP 로 이동하세요
Add new global MCP Server
클릭하고 다음 구성으로 새 MCP 서버를 추가합니다: GXP6
- MCP Inspector를 사용한 디버깅그러면 MCP Inspector가 시작되어 요청을 디버깅하고 분석할 수 있습니다. 다음이 표시됩니다.CopyCopy
예제 쿼리
[!TIP] MCP 클라이언트에서 시도할 수 있는 자연어 쿼리는 다음과 같습니다.
클러스터 관리
- "Elasticsearch 클러스터의 상태는 어떻습니까?"
- "내 클러스터에는 몇 개의 활성 노드가 있나요?"
인덱스 작업
- "Elasticsearch 클러스터에는 어떤 인덱스가 있나요?"
- "3개의 샤드와 1개의 복제본을 갖는 'users'라는 새로운 인덱스를 만듭니다."
- "'old_index'에서 'new_index'로 데이터를 다시 인덱싱합니다."
매핑 관리
- '제품' 인덱스에 대한 필드 매핑을 보여주세요.
- "'제품' 인덱스에 '태그'라는 키워드 유형 필드를 추가합니다."
검색 및 데이터 운영
- "지난달 500달러 이상 주문한 모든 주문을 찾으세요."
- "어떤 제품이 5점 만점에 가장 많은 리뷰를 받았나요?"
- "이러한 고객 기록을 대량으로 '고객' 인덱스로 가져옵니다."
템플릿 관리
- "패턴 'logs-*'를 사용하여 로그에 대한 인덱스 템플릿을 만듭니다."
- "내 인덱스 템플릿을 모두 보여주세요."
- "outdated_template" 인덱스 템플릿을 삭제하세요.
문제가 발생하면 GitHub 저장소에서 문제를 제기해 주시기 바랍니다.
You must be authenticated.
Tools
모델 컨텍스트 프로토콜을 사용하여 에이전트를 Elasticsearch 데이터에 연결하고 Claude Desktop 및 Cursor와 같은 MCP 클라이언트를 통해 Elasticsearch 인덱스와 자연어 상호 작용을 허용합니다.