Skip to main content
Glama
mshegolev

mshegolev/kibana-mcp

kibana-mcp

PyPI version Python 3.10+ License: MIT Tests

Claude 및 모든 MCP 호환 에이전트를 통해 Kibana / Elasticsearch 로그 검색, 집계, 인덱스 탐색 및 대시보드 브라우징을 수행하는 MCP 서버입니다.

왜 다른 Kibana MCP인가?

기존 통합 방식은 브라우저 수준의 자격 증명이 있는 실행 중인 Kibana 인스턴스가 필요하며, 종종 안정적인 REST API 대신 Kibana UI를 래핑합니다. 이 서버는 다음과 같은 특징이 있습니다:

  • 로그 쿼리를 위해 Elasticsearch REST API에 직접 연결 (더 빠르고, Kibana UI 변경에도 안정적임)

  • 직접적인 ES URL이 구성되지 않은 경우 Kibana 콘솔 프록시로 대체 (추가 방화벽 규칙 불필요)

  • ApiKey 인증(에이전트에 최적), 기본 인증 및 익명 액세스 지원

  • 모든 MCP 클라이언트와 작동하도록 구조화된 JSON(outputSchema)과 마크다운 텍스트를 모두 반환

  • 읽기 전용 — 모든 도구는 readOnlyHint: true를 포함하며, 데이터를 수정하지 않음

도구

도구

API

설명

kibana_list_indices

GET ES/_cat/indices

상태, 문서 수, 크기를 포함한 사용 가능한 인덱스 탐색

kibana_search_logs

POST ES/{index}/_search

시간 범위, 정렬, 크기를 포함한 전체 텍스트 로그 검색

kibana_aggregate_logs

POST ES/{index}/_search

count/avg/sum/min/max 메트릭을 사용한 용어 그룹화

kibana_list_dashboards

GET Kibana/api/saved_objects/_find

검색 및 페이지 매김을 포함한 저장된 대시보드 목록

kibana_get_dashboard

GET Kibana/api/saved_objects/dashboard/{id}

패널 분석을 포함한 단일 대시보드 가져오기

설치

pip install kibana-mcp

또는 uvx를 사용하여 직접 실행:

uvx kibana-mcp

구성

환경 변수

변수

필수

설명

KIBANA_URL

Kibana 기본 URL (예: https://kibana.example.com)

ELASTICSEARCH_URL

아니요

직접적인 ES 엔드포인트. 설정하지 않으면 ES 요청이 Kibana 콘솔 프록시를 통함

KIBANA_API_KEY

아니요

ES API 키 (ApiKey base64(id:api_key) 형식). 에이전트에 권장

KIBANA_USERNAME

아니요

HTTP 기본 인증 사용자 이름 (API 키가 설정되지 않은 경우 사용)

KIBANA_PASSWORD

아니요

HTTP 기본 인증 비밀번호

KIBANA_SSL_VERIFY

아니요

true (기본값) 또는 자체 서명 인증서를 위한 false

인증 우선순위: ApiKey > 기본 인증 > 익명.

.env.example.env로 복사하고 값을 입력하세요.

MCP 클라이언트 구성 (Claude Desktop / claude.app)

{
  "mcpServers": {
    "kibana": {
      "command": "uvx",
      "args": ["kibana-mcp"],
      "env": {
        "KIBANA_URL": "https://kibana.example.com",
        "KIBANA_API_KEY": "your-api-key-here"
      }
    }
  }
}

또는 더 나은 성능을 위해 직접 ES 액세스 사용:

{
  "mcpServers": {
    "kibana": {
      "command": "uvx",
      "args": ["kibana-mcp"],
      "env": {
        "KIBANA_URL": "https://kibana.example.com",
        "ELASTICSEARCH_URL": "https://es.example.com:9200",
        "KIBANA_API_KEY": "your-api-key-here"
      }
    }
  }
}

Docker

docker run --rm -i \
  -e KIBANA_URL=https://kibana.example.com \
  -e KIBANA_API_KEY=your-key \
  ghcr.io/mshegolev/kibana-mcp

사용 예시

로그 검색

Find the last 50 ERROR logs from the API service in the last hour

kibana_search_logs(index="logs-*", query="level:ERROR AND service:api", size=50, time_from="2026-04-18T09:00:00Z")

Show 500 HTTP errors sorted oldest first for incident replay

kibana_search_logs(index="nginx-*", query="status:500", sort_order="asc", size=100)

집계

How many logs per log level in the last hour?

kibana_aggregate_logs(index="logs-*", group_by="level", time_from="2026-04-18T09:00:00Z")

What is the average response time per service?

kibana_aggregate_logs(index="logs-*", group_by="service.keyword", metric="avg", metric_field="response_time_ms")

인덱스 탐색

What log indices are available?

kibana_list_indices()

Show me all filebeat indices

kibana_list_indices(pattern="filebeat-*")

대시보드

Find the infrastructure dashboard

kibana_list_dashboards(search="infrastructure")

What panels does dashboard X have?

kibana_get_dashboard(dashboard_id="<id from list_dashboards>")

성능 특성

  • 로그 검색 (kibana_search_logs): 직접 ES URL 사용 시 일반적으로 50-500ms; Kibana 콘솔 프록시를 통할 경우 100-200ms 추가

  • 집계 (kibana_aggregate_logs): size:0 쿼리 — 히트가 전송되지 않으며, 일반적으로 10-100ms

  • 인덱스 목록: 단일 _cat/indices 호출, O(index_count) 응답, 일반적으로 100ms 미만

  • 대시보드 API: Kibana 저장 객체 API, 일반적으로 50-200ms; 지연 시간은 네트워크가 아닌 Kibana 측에서 발생

  • 에이전트가 빈번하게 로그를 검색하는 경우 ELASTICSEARCH_URL을 직접 설정하세요 — 프록시 오버헤드가 제거됩니다.

개발

git clone https://github.com/mshegolev/kibana-mcp
cd kibana-mcp
pip install -e '.[dev]'
pytest tests/ -v
ruff check src tests
ruff format src tests

라이선스

MIT — LICENSE를 참조하세요.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)

Latest Blog Posts

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/mshegolev/kibana-mcp'

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