Elasticsearch 7.x MCP Server

by imlewc

Integrations

  • Utilizes environment variables through .env files to configure connection details for Elasticsearch, including host address, authentication credentials, and server port settings.

  • Enables interaction with Elasticsearch 7.x instances, supporting basic operations like ping and info, as well as complete search functionality including aggregation queries, highlighting, sorting, and other advanced search features.

  • Supports connection to Kibana as part of an Elasticsearch deployment through the Docker Compose setup, providing visualization and management capabilities for Elasticsearch data.

Elasticsearch 7.x MCP 서버

Elasticsearch 7.x 버전과의 호환성을 제공하는 Elasticsearch 7.x용 MCP 서버입니다.

특징

  • Elasticsearch 7.x와 상호 작용하기 위한 MCP 프로토콜 인터페이스를 제공합니다.
  • 기본적인 Elasticsearch 작업(ping, info 등)을 지원합니다.
  • 집계 쿼리, 강조 표시, 정렬 및 기타 고급 기능을 포함한 완전한 검색 기능을 지원합니다.
  • 모든 MCP 클라이언트를 통해 Elasticsearch 기능에 쉽게 액세스하세요

요구 사항

  • 파이썬 3.10+
  • Elasticsearch 7.x(7.17.x 권장)

설치

Smithery를 통해 설치

Smithery를 통해 Claude Desktop에 Elasticsearch 7.x MCP 서버를 자동으로 설치하려면:

지엑스피1

수동 설치

pip install -e .

환경 변수

서버에는 다음과 같은 환경 변수가 필요합니다.

  • ELASTIC_HOST : Elasticsearch 호스트 주소(예: http://localhost:9200 )
  • ELASTIC_USERNAME : Elasticsearch 사용자 이름
  • ELASTIC_PASSWORD : Elasticsearch 비밀번호
  • MCP_PORT : (선택 사항) MCP 서버 수신 포트, 기본값 9999

Docker Compose 사용

  1. .env 파일을 만들고 ELASTIC_PASSWORD 설정합니다.
ELASTIC_PASSWORD=your_secure_password
  1. 서비스 시작:
docker-compose up -d

이렇게 하면 3노드 Elasticsearch 7.17.10 클러스터, Kibana 및 MCP 서버가 시작됩니다.

MCP 클라이언트 사용

MCP 서버에 연결하려면 모든 MCP 클라이언트를 사용할 수 있습니다.

from mcp import MCPClient client = MCPClient("localhost:9999") response = client.call("es-ping") print(response) # {"success": true}

API 문서

현재 지원되는 MCP 방법:

  • es-ping : Elasticsearch 연결 확인
  • es-info : Elasticsearch 클러스터 정보 가져오기
  • es-search : Elasticsearch 인덱스에서 문서 검색

검색 API 예제

기본 검색
# Basic search search_response = client.call("es-search", { "index": "my_index", "query": { "match": { "title": "search keywords" } }, "size": 10, "from": 0 })
집계 쿼리
# Aggregation query agg_response = client.call("es-search", { "index": "my_index", "size": 0, # Only need aggregation results, no documents "aggs": { "categories": { "terms": { "field": "category.keyword", "size": 10 } }, "avg_price": { "avg": { "field": "price" } } } })
고급 검색
# Advanced search with highlighting, sorting, and filtering advanced_response = client.call("es-search", { "index": "my_index", "query": { "bool": { "must": [ {"match": {"content": "search term"}} ], "filter": [ {"range": {"price": {"gte": 100, "lte": 200}}} ] } }, "sort": [ {"date": {"order": "desc"}}, "_score" ], "highlight": { "fields": { "content": {} } }, "_source": ["title", "date", "price"] })

개발

  1. 저장소를 복제합니다
  2. 개발 종속성 설치
  3. 서버를 실행합니다: elasticsearch7-mcp-server

특허

[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 7.x 데이터베이스와 상호 작용하기 위한 MCP 프로토콜 인터페이스를 제공하며, 집계, 강조 표시, 정렬을 포함한 포괄적인 검색 기능을 지원합니다.

  1. Features
    1. Requirements
      1. Installation
        1. Installing via Smithery
        2. Manual Installation
      2. Environment Variables
        1. Using Docker Compose
          1. Using an MCP Client
            1. API Documentation
              1. Search API Examples
            2. Development
              1. License

                Related MCP Servers

                • A
                  security
                  A
                  license
                  A
                  quality
                  Facilitates interaction with Elasticsearch clusters by allowing users to perform index operations, document searches, and cluster management via a Model Context Protocol server and natural language commands.
                  Last updated 5 days ago
                  6
                  113
                  Python
                  Apache 2.0
                  • Apple
                • -
                  security
                  F
                  license
                  -
                  quality
                  A Python MCP server that enables semantic search through Search Labs blog posts indexed in Elasticsearch, allowing Claude to intelligently retrieve relevant information from the blog content.
                  Last updated 2 months ago
                  Python
                • -
                  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 5 months ago
                  1
                  JavaScript
                • -
                  security
                  A
                  license
                  -
                  quality
                  MCP server for using various search tools like Tavily API. Planning to support various search tools (i.e. wiki search, searxng, etc)
                  Last updated 14 days ago
                  1
                  Python
                  MIT License
                  • Apple
                  • Linux

                View all related MCP servers

                ID: zxwxozvlme