WhisperGraph MCP Server
공식오픈소스, 자체 호스팅 가능한 WhisperGraph용 MCP 서버 — DNS, BGP, GeoIP, WHOIS 및 위협 인텔리전스를 매핑하는 73억 9천만 개 노드 / 390억 개 엣지 그래프. 6개의 읽기 전용 도구(Cypher 쿼리 + 스키마 분석 + 위협 평가), 6개의 리소스, 8개의 조사 프롬프트. stdio 및 Streamable HTTP 전송 지원.
문서
WhisperGraph MCP 서버
AI 에이전트를 위한 인터넷 인프라 그래프 — DNS, IP, ASN, BGP, WHOIS, 웹 링크 및 위협 인텔리전스를 매핑한 460억 개의 노드와 엣지. HTTP 호출 2번으로 프로그래밍 방식 가입.
WhisperGraph는 세계 최대 인터넷 인프라 그래프 데이터베이스 — 20개 엔티티 유형에 걸친 460억 개의 노드와 엣지 — 를 기반으로 하는 MCP 서버로, 모든 도메인, IP, ASN, 프리픽스, 조직, 웹 링크 및 위협 인텔리전스 목록을 단일 Cypher 쿼리 가능 그래프로 매핑합니다. 보안 팀, 사고 대응 담당자 및 AI 에이전트가 조사, 귀속, 브랜드 보호 및 인프라 포렌식에 사용합니다.
처음부터 에이전트를 위해 설계되었습니다.
- HTTP 호출 2번으로 프로그래밍 방식 가입. 브라우저, CAPTCHA, 사람 개입 불필요. 이메일 인증만 필요. 약 5초 만에 API 키 발급.
- 에이전트를 포함한 모든 사용자에게 무료 체험 제공. 더 높은 할당량을 위한 유료 등급.
질의 가능 항목:
- DNS: 해석, 네임서버, MX, SPF 체인, DNSSEC
- 라우팅: ASN 소유권, BGP 오리진 이력, MOAS 충돌, 피어링
- 호스팅 및 소유권: 등록기관, WHOIS 연락처, 조직 매핑
- 위협 인텔리전스: 18개 카테고리에 걸친 약 40개 피드, 전체 위협 점수 산정을 위한
CALL explain() - 이력: WHOIS 이력, BGP 경로 변경
- 웹: 도메인 간 분석을 위한 109억 개 하이퍼링크
자세히 알아보기: 에이전트 가입 · WhisperGraph 소개 · Cypher API 참조 · 쿼리 가이드 · Cypher 구문 · 함수 · 모범 사례 · MCP 설정
빠른 시작
WhisperGraph API 키가 필요합니다. 다음 중 하나의 방법으로 획득:
- 프로그래밍 방식 (에이전트에 권장) — 아래 에이전트 빠른 시작 참조.
- 대시보드 이용 (사용자에게 권장) — console.whisper.security/sign-up.
호스팅 원격 서버 (설치 불필요)
Whisper는 https://mcp.whisper.security에서 호스팅 MCP 서버를 운영합니다. 원격 서버를 지원하는 모든 MCP 클라이언트를 여기에 연결하고 API 키로 인증하세요:
{
"mcpServers": {
"whisper": {
"url": "https://mcp.whisper.security",
"headers": { "Authorization": "Bearer <your_api_key>" }
}
}
}
Claude Desktop / Claude Code / Cursor (stdio)
로컬 stdio 전송의 경우 MCP 클라이언트 구성에 다음을 추가하세요:
{
"mcpServers": {
"whisper-graph": {
"command": "npx",
"args": ["-y", "@whisper-security/whisper-graph-mcp"],
"env": { "WHISPER_API_KEY": "your-api-key" }
}
}
}
또는 Claude Code 사용 시:
claude mcp add whisper-graph -e WHISPER_API_KEY=your-api-key -- npx -y @whisper-security/whisper-graph-mcp
이 리포지토리의 자체 호스팅은 자체 환경에서 MCP 계층을 실행하려는 팀을 위한 것입니다. 설정 방법 참조.
에이전트 빠른 시작
HTTP 호출 두 번으로 작동하는 API 키 획득 — 브라우저, CAPTCHA, 대기자 명단 불필요.
1단계 — 가입 시작 (Whisper가 인증 코드 이메일 발송):
POST https://console.whisper.security/api/signup
Content-Type: application/json
{"email":"[email protected]","attribution":{"agent_name":"your-agent","source":"<registry-name>"}}
2단계 — 이메일로 받은 코드로 인증:
POST https://console.whisper.security/api/signup/verify
Content-Type: application/json
{"signup_id":"...","code":"..."}
응답에 api_key, mcp_url, dashboard_url, docs_url이 포함됩니다. 위 MCP 구성 스니펫에서 api_key을 사용하세요. 전체 문서: whisper.security/docs/agent-signup.
도구
6개 도구 모두 읽기 전용입니다.
| 도구 | 기능 |
|---|---|
query | WhisperGraph에 대해 Cypher 쿼리 실행. 백엔드 도달 전 안전 규칙 세트로 검증. |
list_labels | 모든 노드 레이블을 개수와 함께 나열. 쿼리 작성 전 기준 레이블을 모를 때 호출. |
describe_label | 레이블 존재 확인 및 해당 속성 키 열거. |
explain_indicator | IP, 호스트명, CIDR 또는 ASN에 대한 위협 평가 — 점수, 수준, 요인, 출처. |
whisper_history | 지표에 대한 이력 WHOIS 또는 BGP 데이터. |
domain_variants | 그래프 대비 도메인의 타이포스쿼팅/브랜드 보호 변형. |
리소스
6개 MCP 리소스: 전체 스키마, 관계 맵, Cypher 함수 참조, 쿼리 쿡북, 실시간 whisper://stats 및 whisper://quota.
프롬프트
8개 조사 워크플로우 프롬프트 템플릿: investigate-ip, map-attack-surface, compare-domains, blast-radius, threat-triage, whois-pivot, bgp-investigation, typosquat-sweep.
자체 호스팅 (Docker / HTTP)
원격 또는 팀 배포의 경우 Streamable HTTP를 통해 서버 실행:
docker run -p 8080:8080 -e MCP_TRANSPORT=http \
ghcr.io/whisper-sec/whisper-graph-mcp:latest
또는 Docker Compose 사용:
docker compose up
HTTP 모드에서 서버는 인바운드 요청을 인증하지 않습니다 — 호출자의 X-API-Key 또는 Authorization: Bearer 헤더를 호스팅 WhisperGraph API로 중계하며, 헤더가 없을 경우 WHISPER_API_KEY 환경 변수로 폴백합니다. 접근 제어가 필요한 경우 자체 게이트웨이 뒤에 배치하세요.
구성
모든 구성은 환경 변수를 통해 이루어집니다.
| 변수 | 기본값 | 설명 |
|---|---|---|
WHISPER_API_KEY | (없음) | WhisperGraph API 키. HTTP 호출 2번으로 프로그래밍 방식 또는 대시보드를 통해 획득. |
MCP_TRANSPORT | stdio | 로컬 CLI 사용 시 stdio, 원격/Docker 사용 시 http. |
HTTP_HOST | 0.0.0.0 | HTTP 전송을 위한 바인드 호스트. |
HTTP_PORT | 8080 | HTTP 전송을 위한 바인드 포트. |
WHISPER_ALLOWED_HOSTS | (없음) | HTTP 모드에서 DNS 리바인딩 보호를 위한 쉼표로 구분된 Host 헤더 허용 목록. 신뢰할 수 있는 게이트웨이 뒤에서만 비워 두세요. |
WHISPER_DB_URL | https://graph.whisper.security | 호스팅 WhisperGraph API의 기본 URL. |
WHISPER_QUERY_TIMEOUT_MS | 60000 | API로 전달되는 쿼리별 엄격한 기한. |
WHISPER_DB_TIMEOUT_MS | 10000 | 비쿼리 호출에 대한 HTTP 타임아웃. |
LOG_LEVEL | info | debug, info, warn, 또는 error. |
개발
npm install
npm run dev # run from source over stdio
npm test # unit + integration tests (no secrets needed)
npm run build # bundle to dist/
npm run lint # eslint
npm run typecheck # tsc --noEmit
기여
기여를 환영합니다. CONTRIBUTING.md 및 행동 강령 참조. 보안 문제: SECURITY.md 참조.
라이선스
Apache-2.0. "Whisper", Whisper 로고 및 "WhisperGraph"는 Whisper Security의 상표입니다 — NOTICE 참조.