WhisperGraph MCP

ทางการ

โอเพนซอร์ส เซิร์ฟเวอร์ MCP ที่โฮสต์เองได้สำหรับ WhisperGraph — กราฟที่มี 7.39B โหนด / 39B เอดจ์ ซึ่งแมป DNS, BGP, GeoIP, WHOIS และข่าวกรองภัยคุกคาม เครื่องมือแบบอ่านอย่างเดียวหกชนิด (การสอบถาม Cypher + การตรวจสอบสคีมา + การประเมินภัยคุกคาม) ทรัพยากรหกรายการ พร้อมท์การสืบสวนแปดรายการ รองรับการส่งข้อมูลแบบ stdio และ Streamable HTTP

คุณทำอะไรได้บ้างด้วย WhisperGraph MCP?

  • Query the internet infrastructure graph — รันคำสั่ง Cypher บนโหนด DNS, IP, ASN, BGP, WHOIS และเว็บลิงก์จำนวน 46B ด้วย query
  • Explore available data types — แสดงรายการป้ายชื่อโหนดทั้งหมดพร้อมจำนวนด้วย list_labels หรือตรวจสอบคุณสมบัติของป้ายชื่อด้วย describe_label
  • Assess threat posture of an indicator — รับคะแนนภัยคุกคาม ระดับ และปัจจัยที่เกี่ยวข้องสำหรับ IP, hostname, CIDR หรือ ASN โดยใช้ explain_indicator
  • Run pre-built investigation recipes — ดำเนินการตามสูตรที่เตรียมไว้ในแค็ตตาล็อก เช่น assess, identify หรือ attack-path ผ่าน run_recipe โดยไม่ต้องเขียน Cypher
  • Retrieve historical WHOIS or BGP data — ค้นหาบันทึกการลงทะเบียนหรือเส้นทางในอดีตสำหรับตัวบ่งชี้ด้วย whisper_history
  • Discover typosquatting domains — ค้นหาตัวแปรของโดเมนเพื่อป้องกันแบรนด์ที่ตรวจสอบกับกราฟสดโดยใช้ domain_variants

เอกสาร

WhisperGraph

WhisperGraph MCP Server

กราฟโครงสร้างพื้นฐานอินเทอร์เน็ตสำหรับเอเจนต์ AI - โหนดและเอดจ์ 46 พันล้านรายการที่แมป DNS, IP, ASN, BGP, WHOIS, ลิงก์เว็บ และข่าวกรองภัยคุกคาม ลงทะเบียนแบบโปรแกรมได้ใน 2 คำขอ HTTP

npm version License: Apache-2.0 Node >= 20


WhisperGraph คือเซิร์ฟเวอร์ MCP ที่ขับเคลื่อนโดยฐานข้อมูลกราฟโครงสร้างพื้นฐานอินเทอร์เน็ตที่ใหญ่ที่สุดในโลก - โหนดและเอดจ์ 46 พันล้านรายการใน 20 ประเภทเอนทิตี ซึ่งแมปทุกโดเมน, IP, ASN, prefix, องค์กร, ลิงก์เว็บ และรายการข่าวกรองภัยคุกคามไว้ในกราฟเดียวที่สามารถสืบค้นด้วย Cypher ได้ ถูกใช้โดยทีมรักษาความปลอดภัย, ผู้ตอบสนองต่อเหตุการณ์ และเอเจนต์ AI สำหรับการสืบสวน, การระบุแหล่งที่มา, การปกป้องแบรนด์ และนิติวิทยาศาสตร์โครงสร้างพื้นฐาน

สร้างมาเพื่อเอเจนต์ตั้งแต่วันแรก

  • การลงทะเบียนแบบโปรแกรมใน 2 คำขอ HTTP ไม่ต้องใช้เบราว์เซอร์, ไม่มี CAPTCHA, ไม่ต้องมีมนุษย์เข้ามาเกี่ยวข้อง ใช้การยืนยันอีเมลเท่านั้น ได้ API key ที่ใช้งานได้ในเวลาประมาณ 5 วินาที
  • ทดลองใช้ฟรีสำหรับทุกคน รวมถึงเอเจนต์ มีระดับแบบชำระเงินสำหรับโควตาที่สูงขึ้น

สิ่งที่คุณสามารถถามได้:

  • DNS: การแก้ไข, nameserver, MX, เชน SPF, DNSSEC
  • Routing: ความเป็นเจ้าของ ASN, ประวัติ BGP origin, ข้อขัดแย้ง MOAS, peering
  • Hosting & ความเป็นเจ้าของ: registrar, ผู้ติดต่อ WHOIS, การแมปองค์กร
  • ข่าวกรองภัยคุกคาม: ~40 ฟีดใน 18 หมวดหมู่, CALL explain() สำหรับการให้คะแนนภัยคุกคามเต็มรูปแบบ
  • ประวัติ: ประวัติ WHOIS, การเปลี่ยนแปลงเส้นทาง BGP
  • เว็บ: ไฮเปอร์ลิงก์ 10.9 พันล้านรายการสำหรับการวิเคราะห์ระหว่างโดเมน

เรียนรู้เพิ่มเติม: การลงทะเบียนเอเจนต์ · แนะนำ WhisperGraph · เอกสารอ้างอิง Cypher API · คู่มือการสืบค้น · ไวยากรณ์ Cypher · ฟังก์ชัน · แนวทางปฏิบัติที่ดีที่สุด · การตั้งค่า MCP

เริ่มต้นอย่างรวดเร็ว

คุณต้องมี WhisperGraph API key สามารถรับได้โดย:

เซิร์ฟเวอร์ระยะไกลแบบโฮสต์ (ไม่ต้องติดตั้ง)

Whisper ให้บริการเซิร์ฟเวอร์ MCP แบบโฮสต์ที่ https://mcp.whisper.security ชี้ไคลเอนต์ MCP ใดๆ ที่รองรับเซิร์ฟเวอร์ระยะไกลไปที่เซิร์ฟเวอร์นี้และยืนยันตัวตนด้วย API key ของคุณ:

{
  "mcpServers": {
    "whisper": {
      "url": "https://mcp.whisper.security",
      "headers": { "Authorization": "Bearer <your_api_key>" }
    }
  }
}

ไคลเอนต์ MCP (stdio)

สำหรับการส่งข้อมูลแบบ stdio ในเครื่อง ให้เพิ่มสิ่งนี้ลงในการกำหนดค่าไคลเอนต์ MCP ของคุณ:

{
  "mcpServers": {
    "whisper-graph": {
      "command": "npx",
      "args": ["-y", "@whisper-security/whisper-graph-mcp"],
      "env": { "WHISPER_API_KEY": "your-api-key" }
    }
  }
}

การโฮสต์ repo นี้ด้วยตนเองเหมาะสำหรับทีมที่ต้องการรันเลเยอร์ MCP ในสภาพแวดล้อมของตนเอง ดู วิธีการตั้งค่า

เริ่มต้นอย่างรวดเร็วสำหรับเอเจนต์

รับ API key ที่ใช้งานได้ในสองคำขอ HTTP - ไม่ต้องใช้เบราว์เซอร์, ไม่มี CAPTCHA, ไม่มีรายการรอ

ขั้นตอนที่ 1 - เริ่มการลงทะเบียน (Whisper จะส่งรหัสยืนยันทางอีเมล):

POST https://console.whisper.security/api/signup
Content-Type: application/json

{"email":"your-agent@example.com","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 ใช้ api_key ในส่วนการกำหนดค่า MCP ด้านบน เอกสารฉบับเต็ม: whisper.security/docs/agent-signup

เครื่องมือ

เครื่องมือทั้งแปดเป็นแบบอ่านอย่างเดียว

เครื่องมือสิ่งที่ทำ
queryดำเนินการสืบค้น Cypher กับ WhisperGraph ผ่านการตรวจสอบกับชุดกฎความปลอดภัยก่อนถึง backend
list_labelsแสดงรายการป้ายกำกับโหนดทั้งหมดพร้อมจำนวนนับ เรียกใช้ก่อนเขียนคำสั่งเมื่อคุณไม่แน่ใจว่าควรยึดกับป้ายกำกับใด
describe_labelยืนยันว่ามีป้ายกำกับอยู่และแจกแจงคีย์คุณสมบัติของป้ายกำกับนั้น
explain_indicatorการประเมินภัยคุกคามสำหรับ IP, ชื่อโฮสต์, CIDR หรือ ASN - คะแนน, ระดับ, ปัจจัย, แหล่งที่มา
whisper_historyข้อมูลประวัติ WHOIS หรือ BGP สำหรับตัวบ่งชี้
domain_variantsตัวแปรการพิมพ์ผิด/การปกป้องแบรนด์ของโดเมน ตรวจสอบกับกราฟ
list_recipesแสดงรายการแคตตาล็อกสูตรสำเร็จรูปทั้งหมดของ whisper.security (ดูด้านล่าง)
run_recipeรันสูตรจากแคตตาล็อกใดๆ ด้วย slug - ขั้นตอนโดยตรงแบบไม่ใช้คีย์หรือโฟลว์หลายขั้นตอนแบบใช้คีย์

สูตรจากแคตตาล็อก

list_recipes + run_recipe เปิดเผย แคตตาล็อก whisper.security ทั้งหมด - 29 สูตรที่คัดสรรแล้ว ไม่ต้องเขียน Cypher เอง แคตตาล็อกที่รวมมา (src/catalog/recipes.json) ถูกสร้างจากแหล่งที่มาหลักด้วย npm run sync:catalog ดังนั้นจึงติดตามแพลตฟอร์ม

สองประเภท:

  • สูตรโดยตรง (ไม่ใช้คีย์) ขั้นตอนกราฟเดียวที่รันโดยไม่ต้องใช้คีย์ (จำกัดอัตรา): assess (สถานะภัยคุกคาม), identify (ผู้ให้บริการ/ผู้ดำเนินการ), explain, variants, origins (เปิดเผย CDN), history / history-whois, walk, psl-tldplusone, psl-affiliation, asset, lookup-tor-relay, db-schema
  • สูตรโฟลว์ (ใช้คีย์) การสืบสวนหลายขั้นตอนที่คัดสรรแล้วซึ่งต้องใช้ API key: attack-path, attack-surface, indicator-enrichment, infrastructure-mapping, subdomain-takeover, bgp-hijack-exposure, blast-radius, route-health, typosquat, nameserver-hijack-dns-consistency, map-supply-chain-concentration, discover-ai-agent-infrastructure, build-takedown-evidence-package, indicator, anycast-dns-root-sovereignty
// keyless direct recipe
{ "name": "run_recipe", "arguments": { "recipe": "assess", "inputs": { "v": "185.220.101.33" } } }

// keyed multi-step flow (needs WHISPER_API_KEY / X-API-Key)
{ "name": "run_recipe", "arguments": { "recipe": "indicator-enrichment", "inputs": { "value": "github.com" } } }

แต่ละสูตรมี docsUrl (มองเห็นได้ใน list_recipes) ที่ลิงก์ไปยังหน้าของมันภายใต้ whisper.security/docs

ทรัพยากร

ทรัพยากร MCP หกรายการ: สกีมาเต็มรูปแบบ, แผนที่ความสัมพันธ์, เอกสารอ้างอิงฟังก์ชัน Cypher, ตำราสูตรการสืบค้น, รวมถึง whisper://stats และ whisper://quota แบบสด

พรอมต์

เทมเพลตพรอมต์เวิร์กโฟลว์การสืบสวนแปดแบบ: 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 header ของผู้เรียกไปยัง WhisperGraph API ที่โฮสต์อยู่ โดยจะถอยกลับไปใช้ตัวแปรสภาพแวดล้อม WHISPER_API_KEY เมื่อไม่มี header ใดๆ วางไว้หลังเกตเวย์ของคุณเองหากคุณต้องการการควบคุมการเข้าถึง

การกำหนดค่า

การกำหนดค่าทั้งหมดทำผ่านตัวแปรสภาพแวดล้อม

ตัวแปรค่าเริ่มต้นคำอธิบาย
WHISPER_API_KEY(ไม่มี)WhisperGraph API key ของคุณ รับได้ แบบโปรแกรมใน 2 คำขอ HTTP หรือผ่าน แดชบอร์ด
MCP_TRANSPORTstdiostdio สำหรับการใช้ CLI ในเครื่อง, http สำหรับระยะไกล/Docker
HTTP_HOST0.0.0.0โฮสต์ที่ใช้ผูกสำหรับการส่งข้อมูล HTTP
HTTP_PORT8080พอร์ตที่ใช้ผูกสำหรับการส่งข้อมูล HTTP
WHISPER_ALLOWED_HOSTS(ไม่มี)รายการอนุญาต header Host ที่คั่นด้วยคอมมา สำหรับการป้องกัน DNS-rebinding ในโหมด HTTP เว้นว่างไว้เฉพาะเมื่ออยู่หลังเกตเวย์ที่เชื่อถือได้
WHISPER_DB_URLhttps://graph.whisper.securityURL ฐานของ WhisperGraph API ที่โฮสต์อยู่
WHISPER_QUERY_TIMEOUT_MS60000กำหนดเวลาสิ้นสุดต่อคำสั่งแบบตายตัวที่ส่งต่อไปยัง API
WHISPER_DB_TIMEOUT_MS10000หมดเวลา HTTP สำหรับการเรียกที่ไม่ใช่คำสั่ง
LOG_LEVELinfodebug, 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