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
Enables querying the ntopng Clickhouse database to access historical network flows and alerts for network monitoring data analysis.
mcp-server-ntopng
NTOPNG 모델 컨텍스트 프로토콜 서버
NTOPNG 데이터베이스를 사용하여 AI 에이전트가 네트워크 모니터링 데이터를 쿼리할 수 있도록 하는 NTOPNG 용 모델 컨텍스트 프로토콜 서버 구현입니다.
이 MCP 서버는 ntopng
가 ClickHouse를 사용하여 과거 흐름과 알림을 저장한다고 가정합니다. ntopng ClickHouse를 확인하세요.
도구
fetch_ntopng_all_ifids
- ntopng에서 사용 가능한 모든 인터페이스 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_stats
- MAC 알림에 대한 통계를 검색합니다.
get_ntopng_network_alert_stats
- 네트워크 알림에 대한 통계를 검색합니다.
get_ntopng_snmp_device_alert_list
- SNMP 장치 알림 목록을 검색합니다.
get_ntopng_snmp_device_alert_stats
- SNMP 장치 알림에 대한 통계를 검색합니다.
get_ntopng_system_alert_stats
- 시스템 알림에 대한 통계를 검색합니다.
query_ntopng_flows_data
- ntopng 흐름 데이터베이스에서 자세한 흐름 데이터를 검색합니다.
get_ntopng_top-k_flows
- ntopng 흐름 데이터베이스에서 상위-k 흐름 데이터를 검색합니다.
get_ntopng_user_alert_stats
- 사용자 알림에 대한 통계를 검색합니다.
get_ntopng_flow_devices_stats
- 모든 흐름 장치에 대한 통계를 검색합니다.
get_ntopng_sflow_devices_stats
- 모든 sFlow 장치에 대한 통계를 검색합니다.
list_tables_ntopng_database
- ntopng 데이터베이스의 테이블 구조를 나열합니다.
query_ntopng_database
- ntopng Clickhouse 데이터베이스를 쿼리합니다.
상태
Claude Desktop 앱 및 기타 MCP 호환 호스트와 클라이언트와 호환됩니다.
아직 MCP 리소스 나 프롬프트 에 대한 지원이 없습니다.
구성
- 다음 위치에 있는 Claude Desktop 구성 파일을 만들거나 편집하세요.
- macOS의 경우:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows의 경우:
%APPDATA%/Claude/claude_desktop_config.json
- macOS의 경우:
- 다음을 추가합니다.
지엑스피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
- 비표준 포트를 사용하지 않는 한 일반적으로 설정할 필요가 없습니다.
- 기본값: HTTPS가 활성화된 경우
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을 편집하여 로컬 경로를 변경합니다.