mcp-server-ntopng
NTOPNG 모델 컨텍스트 프로토콜 서버
NTOPNG 데이터베이스를 사용하여 AI 에이전트가 네트워크 모니터링 데이터를 쿼리할 수 있도록 하는 NTOPNG 용 모델 컨텍스트 프로토콜 서버 구현입니다.
이 MCP 서버는 ntopng 가 ClickHouse를 사용하여 과거 흐름과 알림을 저장한다고 가정합니다. ntopng ClickHouse를 확인하세요.
도구
fetch_ntopng_all_ifidsntopng에서 사용 가능한 모든 인터페이스 ID를 검색합니다.
get_ntopng_hosts_location호스트의 지리적 위치와 추가 정보를 가져옵니다.
fetch_ntopng_top_local_talkers지정된 인터페이스에 대한 상위 10개 로컬 토커를 검색합니다.
fetch_ntopng_top_remote_talkers지정된 인터페이스에 대한 상위 10개 원격 토커를 검색합니다.
get_ntopng_all_alert_stats모든 알림에 대한 통계를 검색합니다.
get_ntopng_flow_alert_stats흐름 알림에 대한 통계를 검색합니다.
get_ntopng_host_alert_stats호스트 알림에 대한 통계를 검색합니다.
get_ntopng_interface_alert_stats인터페이스 알림에 대한 통계를 검색합니다.
get_ntopng_mac_alert_statsMAC 알림에 대한 통계를 검색합니다.
get_ntopng_network_alert_stats네트워크 알림에 대한 통계를 검색합니다.
get_ntopng_snmp_device_alert_listSNMP 장치 알림 목록을 검색합니다.
get_ntopng_snmp_device_alert_statsSNMP 장치 알림에 대한 통계를 검색합니다.
get_ntopng_system_alert_stats시스템 알림에 대한 통계를 검색합니다.
query_ntopng_flows_datantopng 흐름 데이터베이스에서 자세한 흐름 데이터를 검색합니다.
get_ntopng_top-k_flowsntopng 흐름 데이터베이스에서 상위-k 흐름 데이터를 검색합니다.
get_ntopng_user_alert_stats사용자 알림에 대한 통계를 검색합니다.
get_ntopng_flow_devices_stats모든 흐름 장치에 대한 통계를 검색합니다.
get_ntopng_sflow_devices_stats모든 sFlow 장치에 대한 통계를 검색합니다.
list_tables_ntopng_databasentopng 데이터베이스의 테이블 구조를 나열합니다.
query_ntopng_databasentopng Clickhouse 데이터베이스를 쿼리합니다.
Related MCP server: MCP-Guide
상태
Claude Desktop 앱 및 기타 MCP 호환 호스트와 클라이언트와 호환됩니다.
아직 MCP 리소스 나 프롬프트 에 대한 지원이 없습니다.
구성
다음 위치에 있는 Claude Desktop 구성 파일을 만들거나 편집하세요.
macOS의 경우:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows의 경우:
%APPDATA%/Claude/claude_desktop_config.json
다음을 추가합니다.
지엑스피1
/path/to/your/uv-binary``uv실행 파일의 절대 경로로 바꾸세요.which uv있는 경로를 찾으세요. 이렇게 하면 서버를 시작할 때 올바른 버전의uv사용됩니다.변경 사항을 적용하려면 Claude Desktop을 다시 시작하세요.
개발
저장소 루트에 있는
.env파일이나claude_desktop_config.json파일에서 환경 변수를 설정합니다.
uv sync실행하여 종속성을 설치하세요.uv설치하려면 여기의 지침을 따르세요. 그런 다음source .venv/bin/activate실행하세요.프로젝트 메인 디렉토리에서
uv pip install -e .사용하여mcp-ntopng패키지를 설치합니다.간편한 테스트를 위해
mcp dev mcp_ntopng/mcp_server.py실행하여 MCP 서버를 시작할 수 있습니다. 적절한 채팅 클라이언트로 변경하세요.
환경 변수
다음 환경 변수는 데이터베이스 연결을 구성하는 데 사용됩니다.
NTOPNG_HOST:ntopng서버의 호스트 이름NTOPNG_DBUSER: Clickhouse DB 인증을 위한 사용자 이름NTOPNG_DBPASSWORD: Clickhouse DB 인증을 위한 비밀번호NTOPNG_API_KEY:ntopng인증 토큰.
선택 과목
NTOPNG_DBPORT:ntopng서버의 Clickhouse DB 포트 번호기본값: HTTPS가 활성화된 경우
9000, 비활성화된 경우8123비표준 포트를 사용하지 않는 한 일반적으로 설정할 필요가 없습니다.
NTOPNG_SECURE: TLS 연결을 활성화/비활성화합니다.기본값:
false보안 TLS 연결의 경우
true로 설정
NTOPNG_VERIFY: SSL 인증서 검증을 활성화/비활성화합니다.기본값:
true인증서 검증을 비활성화하려면 `false`로 설정합니다(프로덕션에는 권장하지 않음).
NTOPNG_CONNECT_TIMEOUT: 연결 시간 초과(초)기본값: `30
연결 시간 초과가 발생하면 이 값을 늘리십시오.
NTOPNG_SEND_RECEIVE_TIMEOUT: 송수신 시간 초과(초)기본값:
300장기 실행 쿼리의 경우 이 값을 늘리십시오.
Clickhouse에 대한 TLS 연결을 설정하는 방법에 대한 자세한 내용은
ntopng설명서의 TLS 설정을 확인하세요.
개발
로컬 컴퓨터에 패키지를 설치합니다.
MCP 검사기 실행
Claude Desktop에서 지역 도서관을 이용하세요.
찾기: /Users/marco/Library/Application\ Support/Claude/claude_desktop_config.json
claude_desktop_config.json을 편집하여 로컬 경로를 변경합니다.