honeycomb-mcp-server

by kajirita2002
Verified

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 interacting with the Honeycomb API, enabling operations such as retrieving, creating, and updating Honeycomb datasets, queries, events, boards, markers, SLOs, and triggers to streamline observability and monitoring workflows.

허니컴 MCP 서버

이것을 일본어 로 읽어보세요

개요

이 서버는 Claude AI가 Honeycomb API 와 상호 작용할 수 있도록 MCP(Model Context Protocol)를 사용하는 인터페이스입니다.

이 MCP 서버를 사용하면 Claude AI는 Honeycomb 데이터 세트, 쿼리, 이벤트, 보드, 마커, SLO 및 트리거를 검색, 생성 및 업데이트하는 등의 작업을 수행할 수 있습니다.

저장소 정보

이 저장소는 Honeycomb MCP 서버의 독립형 구현을 제공합니다. Claude AI와 Honeycomb을 통합하여 관찰 및 모니터링 워크플로를 간소화합니다.

설정

필수 조건

  • Node.js 18 이상
  • 허니컴 API 키

설치

지엑스피1

환경 변수 설정

# Set environment variables export HONEYCOMB_API_KEY="your_honeycomb_api_key"

MCP 구성 예

이 MCP 서버를 사용하는 경우 mcp_config.json 파일에 다음 구성을 추가하세요.

"honeycomb": { "command": "npx", "args": ["-y", "@kajirita2002/honeycomb-mcp-server"], "env": { "HONEYCOMB_API_KEY": "your_honeycomb_api_key" } }

서버 시작

# Start the server npm start

사용 가능한 도구

이 MCP 서버는 다음과 같은 도구를 제공합니다.

입증

  1. honeycomb_auth
    • Honeycomb API로 인증합니다
    • 입력:
      • apiKey (문자열, 선택 사항): Honeycomb API 키(제공되지 않으면 환경 변수 사용)

데이터 세트 관리

  1. honeycomb_datasets_list
    • 사용 가능한 모든 데이터 세트를 나열합니다.
    • 입력 매개변수가 필요하지 않습니다
  2. honeycomb_dataset_get
    • 특정 데이터 세트에 대한 정보를 가져옵니다
    • 입력:
      • datasetSlug (문자열, 필수): 데이터 세트의 슬러그
  3. honeycomb_datasets_create
    • 새로운 데이터 세트를 생성합니다
    • 입력:
      • name (문자열, 필수): 데이터 세트의 이름
      • description (문자열, 선택 사항): 데이터 세트에 대한 설명

열 관리

  1. honeycomb_columns_list
    • 데이터 세트의 모든 열을 나열합니다
    • 입력:
      • datasetSlug (문자열, 필수): 데이터 세트의 슬러그

쿼리 관리

  1. honeycomb_query_create
    • 데이터 세트에 대한 새 쿼리를 생성합니다.
    • 입력:
      • datasetSlug (문자열, 필수): 데이터 세트의 슬러그
      • query (객체, 필수): 쿼리 구성
  2. honeycomb_query_result_create
    • 쿼리를 실행하고 결과를 반환합니다.
    • 입력:
      • datasetSlug (문자열, 필수): 데이터 세트의 슬러그
      • query (객체, 필수): 쿼리 구성

이벤트 관리

  1. honeycomb_event_create
    • 데이터 세트에 새 이벤트를 생성합니다.
    • 입력:
      • datasetSlug (문자열, 필수): 데이터 세트의 슬러그
      • data (객체, 필수): 이벤트 데이터

이사회 관리

  1. honeycomb_boards_list
    • 모든 보드를 나열합니다
    • 입력 매개변수가 필요하지 않습니다
  2. honeycomb_board_get
    • 특정 보드에 대한 정보를 얻습니다
    • 입력:
      • boardId (문자열, 필수): 보드의 ID
  3. honeycomb_board_create
    • 새로운 보드를 만듭니다
    • 입력:
      • name (문자열, 필수): 보드 이름
      • description (문자열, 선택 사항): 보드에 대한 설명
      • query_ids (문자열 배열, 선택 사항): 보드에 포함할 쿼리 ID
  4. honeycomb_board_update
    • 기존 보드를 업데이트합니다
    • 입력:
      • boardId (문자열, 필수): 업데이트할 보드의 ID
      • name (문자열, 선택 사항): 보드의 새 이름
      • description (문자열, 선택 사항): 보드에 대한 새 설명
      • query_ids (문자열 배열, 선택 사항): 보드에 포함할 새 쿼리 ID

마커 관리

  1. honeycomb_markers_list
    • 데이터 세트의 모든 마커를 나열합니다.
    • 입력:
      • datasetSlug (문자열, 필수): 데이터 세트의 슬러그
  2. honeycomb_marker_create
    • 새로운 마커를 생성합니다
    • 입력:
      • datasetSlug (문자열, 필수): 데이터 세트의 슬러그
      • message (문자열, 필수): 마커에 대한 메시지
      • type (문자열, 필수): 마커의 유형
      • start_time (문자열, 필수): 마커의 시작 시간
      • end_time (문자열, 선택 사항): 마커의 종료 시간
      • url (문자열, 선택 사항): 마커와 연결된 URL
    • 입력:
      • datasetSlug (문자열, 필수): 데이터 세트의 슬러그
      • markerId (문자열, 필수): 삭제할 마커의 ID

사용 예

다음은 Claude가 MCP 서버를 사용하여 새로운 Honeycomb 데이터 세트를 만들고 이벤트를 추가하는 예입니다.

[Claude] Please create a new dataset in Honeycomb called "Application Monitoring" with a description "Monitoring for our production application". [User] I'll help you create a new dataset in Honeycomb. [Claude] I'll create a new dataset for you in Honeycomb. I'll use the honeycomb_datasets_create tool: Input: { "name": "Application Monitoring", "description": "Monitoring for our production application" } The dataset has been created successfully! [Claude] Now, let me add an event to this dataset. I'll create an event with some sample metrics. I'll use the honeycomb_event_create tool: Input: { "datasetSlug": "application-monitoring", "data": { "service": "api-gateway", "duration_ms": 45.2, "status_code": 200, "endpoint": "/users", "method": "GET" } } Event created successfully! You can now see this event in the Honeycomb UI under the Application Monitoring dataset. [Claude] I can also create a query to analyze this data. Let me create a query that shows the average duration by endpoint. I'll use the honeycomb_query_create tool: Input: { "datasetSlug": "application-monitoring", "query": { "calculations": [ { "op": "AVG", "column": "duration_ms" } ], "breakdowns": ["endpoint"], "time_range": 3600 } }

일반적인 통합 패턴

  1. 관찰성 자동화
    [User] Claude, please help me set up a new SLO for API response times. [Claude] I can help with that. Let me create an SLO to track API response times. I'll use honeycomb_slo_create with these parameters: { "datasetSlug": "production-api", "name": "API Response Time SLO", "description": "Tracks response time for critical API endpoints", "sli": { "alias": "Response Time < 300ms", "conditions": { "column": "duration_ms", "operator": "<", "value": 300 } }, "time_period_days": 30, "target_per_million": 995000 }
  2. 사건 조사
    [User] We're seeing elevated error rates in production. Can you help investigate? [Claude] I'll help investigate the elevated error rates. Let me query the recent error data. First, I'll use honeycomb_query_result_create: { "datasetSlug": "production", "query": { "calculations": [ { "op": "COUNT" } ], "filters": [ { "column": "status_code", "operator": ">=", "value": 500 } ], "breakdowns": ["service", "endpoint"], "time_range": 3600, "granularity": 60 } }

"프로덕션 애플리케이션 모니터링"이라는 설명으로 "애플리케이션 모니터링" 데이터 세트를 생성합니다...

[클로드는 honeycomb_datasets_create를 사용합니다]

데이터세트가 성공적으로 생성되었습니다! 이제 이벤트를 추가할 수 있습니다.

테스트하기 위해 데이터 세트에서 샘플 이벤트를 생성할까요?

[사용자] 네, 샘플 이벤트를 추가해 주세요.

[클로드] "애플리케이션 모니터링" 데이터 세트에 샘플 이벤트를 추가하겠습니다.

[클로드는 honeycomb_event_create를 사용합니다]

성공! "애플리케이션 모니터링" 데이터세트에 다음 데이터를 사용하여 샘플 이벤트를 추가했습니다. { "service": "api-server", "message": "사용자 로그인 성공", "duration_ms": 45, "status_code": 200, "endpoint": "/api/login", "timestamp": "2025-03-25T14:30:00Z" }

이 이벤트는 완료하는 데 45ms가 걸린 성공적인 사용자 로그인 작업을 나타냅니다.

이제 Honeycomb 대시보드에서 이 이벤트를 보고 데이터 분석을 위한 쿼리를 작성할 수 있습니다.

## Error Handling This MCP server returns error information in a consistent format. When an error occurs, the following structure is returned: ```json { "error": { "message": "Detailed error description", "code": "ERROR_CODE" } }

일반적인 오류 코드

  • AUTH_ERROR : 인증에 실패했습니다. API 키를 확인하세요.
  • NOT_FOUND : 요청한 리소스를 찾을 수 없습니다.
  • INVALID_PARAMETER : 하나 이상의 매개변수가 잘못되었습니다.
  • RATE_LIMIT : Honeycomb API 속도 제한에 도달했습니다.
  • SERVER_ERROR : 내부 서버 오류가 발생했습니다.

문제 해결 팁

  1. 인증 문제
    • HONEYCOMB_API_KEY 가 올바르게 설정되었는지 확인하세요.
    • API 키에 적절한 권한이 있는지 확인하세요.
  2. 데이터 세트를 찾을 수 없습니다
    • 데이터 세트 슬러그가 올바른지 확인하세요(오타가 있는지 확인하세요)
    • Honeycomb 계정에 데이터 세트가 있는지 확인하세요.
  3. 쿼리 실행 문제
    • 쿼리 매개변수가 올바르게 형식화되었는지 확인합니다.
    • 쿼리의 열 이름이 데이터 세트의 열 이름과 일치하는지 확인하세요.

기여하다

Honeycomb MCP 서버에 기여해 주세요! 기여 방법은 다음과 같습니다.

개발 설정

  1. 저장소를 포크하세요
  2. 포크를 복제하세요
    git clone https://github.com/your-username/honeycomb-mcp-server.git
  3. 종속성 설치
    npm install
  4. 변경 사항을 만드세요
  5. 빌드를 실행하세요
    npm run build
  6. 변경 사항을 로컬에서 테스트하세요

풀 리퀘스트 프로세스

  1. 기능 브랜치 생성
    git checkout -b feat-your-feature-name
  2. 기존 커밋 형식에 따라 변경 사항을 커밋하세요.
    git commit -m "feat: add new feature"
  3. 포크로 밀어주세요
    git push origin feat-your-feature-name
  4. 풀 리퀘스트 열기

코딩 표준

  • 모든 새 코드에 TypeScript를 사용하세요
  • 기존 코드 스타일을 따르세요
  • 공개 API에 대한 주석 추가
  • 새로운 기능에 대한 테스트를 작성하세요

특허

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

ID: 29kwahuexd