Loki MCP Server

by ghrud92
Verified
MIT License
194
  • Linux
  • Apple

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

  • Provides tools for querying Grafana Loki logs using LogQL, accessing label values and metadata, and analyzing log data with support for different output formats and filtering options.

간단한 Loki MCP 서버

Loki MCP 서버는 logcli 사용하여 Grafana Loki 로그를 쿼리하기 위한 모델 컨텍스트 프로토콜(MCP) 인터페이스입니다. 이 서버를 통해 AI 어시스턴트는 Loki의 로그 데이터에 직접 접근하여 분석할 수 있습니다.

특징

  • LogQL을 완벽하게 지원하는 Loki 로그 쿼리
  • 레이블 값과 메타데이터 가져오기
  • 환경 변수 또는 구성 파일을 통한 인증 및 구성 지원
  • 다양한 출력 형식(기본값, 원시, JSON 줄)으로 형식화된 결과를 제공합니다.

필수 조건

  • Node.js v16 이상
  • 타입스크립트
  • Grafana Loki logcli가 PATH에 설치되어 접근 가능합니다.
  • Loki 서버 인스턴스에 액세스

설치

Smithery를 통해 설치

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

지엑스피1

MCP용

{ "mcpServers": { "simple-loki": { "command": "npx", "args": ["-y", "simple-loki-mcp"], "env": { "LOKI_ADDR": "https://loki.sup.band" } } } }

엔피엠

  1. 저장소를 복제합니다.
git clone https://github.com/ghrud92/loki-mcp.git cd loki-mcp
  1. 종속성 설치:
npm install
  1. 프로젝트를 빌드하세요:
npm run build

사용 가능한 MCP 도구

쿼리-로키

필터링 옵션을 사용하여 Loki의 로그를 쿼리합니다.

매개변수:

  • query (필수): Loki 쿼리 문자열(LogQL)
  • from 시간: 시작 타임스탬프(예: "2023-01-01T12:00:00Z")
  • to : 종료 타임스탬프(예: "2023-01-01T13:00:00Z")
  • limit : 반환할 로그의 최대 개수
  • batch : 쿼리 결과에 대한 배치 크기
  • output : 출력 형식("기본", "원시" 또는 "jsonl")
  • quiet : 쿼리 메타데이터를 억제합니다
  • forward : 결과를 시간순으로 표시합니다.

레이블 값 가져오기

특정 레이블에 대한 모든 값을 검색합니다.

매개변수:

  • label (필수): 값을 가져올 레이블 이름

레이블 가져오기

사용 가능한 라벨을 모두 검색합니다.

매개변수가 필요하지 않습니다.

구성

다음을 사용하여 Loki 액세스를 구성할 수 있습니다.

환경 변수

  • LOKI_ADDR : 로키 서버 주소(URL)
  • LOKI_USERNAME : 기본 인증을 위한 사용자 이름
  • LOKI_PASSWORD : 기본 인증을 위한 비밀번호
  • LOKI_TENANT_ID : 멀티 테넌트 Loki의 테넌트 ID
  • LOKI_BEARER_TOKEN : 인증을 위한 베어러 토큰
  • LOKI_BEARER_TOKEN_FILE : 베어러 토큰을 포함하는 파일
  • LOKI_CA_FILE : TLS용 사용자 정의 CA 파일
  • LOKI_CERT_FILE : TLS용 클라이언트 인증서 파일
  • LOKI_KEY_FILE : TLS용 클라이언트 키 파일
  • LOKI_ORG_ID : 다중 조직 설정을 위한 조직 ID
  • LOKI_TLS_SKIP_VERIFY : TLS 검증 건너뛰기("true" 또는 "false")
  • LOKI_CONFIG_PATH : 구성 파일에 대한 사용자 정의 경로
  • DEBUG : 디버그 로깅 활성화

구성 파일

또는 다음 위치 중 하나에 logcli-config.yaml 파일을 만듭니다.

  • LOKI_CONFIG_PATH 에 의해 지정된 사용자 정의 경로
  • 현재 작업 디렉토리
  • 홈 디렉토리( ~/.logcli-config.yaml )

구성 파일 예:

addr: https://loki.example.com username: user password: pass tenant_id: mytenant

용법

서버를 시작합니다:

npm start

개발을 위해:

npm run dev

개발

# Run linter npm run lint # Fix linting issues npm run lint:fix # Run tests npm run test

특허

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

You must be authenticated.

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

LogQL을 사용하여 AI 어시스턴트가 Grafana Loki 로그를 쿼리하고 분석할 수 있도록 하는 MCP 인터페이스로, 인증 및 다양한 출력 형식을 지원합니다.

  1. Features
    1. Prerequisites
      1. Installation
        1. Installing via Smithery
        2. for MCP
        3. npm
      2. Available MCP Tools
        1. query-loki
        2. get-label-values
        3. get-labels
      3. Configuration
        1. Environment Variables
        2. Config Files
      4. Usage
        1. Development
          1. License
            ID: e3vo22yclf