WhisperGraph MCP

officiel

Serveur MCP open source et auto-hébergeable pour WhisperGraph — un graphe de 7,39 milliards de nœuds / 39 milliards d'arêtes cartographiant DNS, BGP, GeoIP, WHOIS et le renseignement sur les menaces. Six outils en lecture seule (requête Cypher + introspection de schéma + évaluation des menaces), six ressources, huit invites d'investigation. Transports stdio et Streamable HTTP.

Que pouvez-vous faire avec Whisper Graph MCP ?

  • Query the internet infrastructure graph — run Cypher queries across 46B DNS, IP, ASN, BGP, WHOIS, and web-link nodes with query.
  • Explore available data types — list all node labels and their counts with list_labels, or inspect a label’s properties with describe_label.
  • Assess threat posture of an indicator — get a threat score, level, and contributing factors for an IP, hostname, CIDR, or ASN using explain_indicator.
  • Run pre-built investigation recipes — execute catalog recipes like assess, identify, or attack-path via run_recipe without writing Cypher.
  • Retrieve historical WHOIS or BGP data — look up past registration or routing records for an indicator with whisper_history.
  • Discover typosquatting domains — find brand-protection variants of a domain checked against the live graph using domain_variants.

Documentation

WhisperGraph

Serveur MCP WhisperGraph

Le graphe d'infrastructure Internet pour les agents IA - 46 milliards de nœuds et d'arêtes cartographiant DNS, IP, ASN, BGP, WHOIS, liens Web et renseignements sur les menaces. Inscrivez-vous par programmation en 2 appels HTTP.

npm version License: Apache-2.0 Node >= 20


WhisperGraph est un serveur MCP s'appuyant sur la plus grande base de données graphe d'infrastructure Internet au monde - 46 milliards de nœuds et d'arêtes répartis sur 20 types d'entités, cartographiant chaque domaine, IP, ASN, préfixe, organisation, lien Web et listing de renseignement sur les menaces en un seul graphe interrogeable en Cypher. Utilisé par les équipes de sécurité, les intervenants en cas d'incident et les agents IA pour les enquêtes, l'attribution, la protection de marque et l'investigation d'infrastructure.

Conçu pour les agents dès le premier jour.

  • Inscription programmatique en 2 appels HTTP. Pas de navigateur, pas de CAPTCHA, pas d'intervention humaine. Vérification par e-mail uniquement. Clé API fonctionnelle en ~5 secondes.
  • Essai gratuit pour tous, y compris les agents. Niveaux payants pour des quotas plus élevés.

Ce que vous pouvez demander :

  • DNS : résolution, serveurs de noms, MX, chaînes SPF, DNSSEC
  • Routage : propriété ASN, historique d'origine BGP, conflits MOAS, peering
  • Hébergement et propriété : registrar, contacts WHOIS, cartographie d'organisation
  • Renseignement sur les menaces : ~40 flux répartis sur 18 catégories, CALL explain() pour une évaluation complète des menaces
  • Historique : historique WHOIS, changements de route BGP
  • Web : 10,9 milliards d'hyperliens pour l'analyse inter-domaines

En savoir plus : Inscription agent · Introduction à WhisperGraph · Référence de l'API Cypher · Guide de requêtes · Syntaxe Cypher · Fonctions · Bonnes pratiques · Configuration MCP

Démarrage rapide

Vous avez besoin d'une clé API WhisperGraph. Obtenez-en une soit :

Serveur distant hébergé (sans installation)

Whisper exécute un serveur MCP hébergé à l'adresse https://mcp.whisper.security. Pointez n'importe quel client MCP prenant en charge les serveurs distants vers celui-ci et authentifiez-vous avec votre clé API :

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

Clients MCP (stdio)

Pour le transport stdio local, ajoutez ceci à la configuration de votre client MCP :

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

L'auto-hébergement de ce dépôt est destiné aux équipes qui souhaitent exécuter la couche MCP dans leur propre environnement. Voir Comment configurer.

Démarrage rapide agent

Obtenez une clé API fonctionnelle en deux appels HTTP - pas de navigateur, pas de CAPTCHA, pas de liste d'attente.

Étape 1 - démarrez l'inscription (Whisper envoie un code de vérification par e-mail) :

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

{"email":"your-agent@example.com","attribution":{"agent_name":"your-agent","source":"<registry-name>"}}

Étape 2 - vérifiez avec le code reçu par e-mail :

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

{"signup_id":"...","code":"..."}

La réponse contient api_key, mcp_url, dashboard_url et docs_url. Utilisez api_key dans l'extrait de configuration MCP ci-dessus. Documentation complète : whisper.security/docs/agent-signup.

Outils

Les huit outils sont en lecture seule.

OutilCe qu'il fait
queryExécute une requête Cypher sur WhisperGraph. Validée par un ensemble de règles de sécurité avant d'atteindre le backend.
list_labelsListe chaque étiquette de nœud avec le nombre d'occurrences. Appelez-le avant d'écrire une requête si vous n'êtes pas sûr de l'étiquette sur laquelle vous ancrer.
describe_labelConfirme qu'une étiquette existe et énumère ses clés de propriété.
explain_indicatorÉvaluation des menaces pour une IP, un nom d'hôte, un CIDR ou un ASN - score, niveau, facteurs, sources.
whisper_historyDonnées WHOIS ou BGP historiques pour un indicateur.
domain_variantsVariantes de typosquattage / protection de marque d'un domaine, vérifiées par rapport au graphe.
list_recipesListe le catalogue complet whisper.security de recettes prêtes à l'emploi (voir ci-dessous).
run_recipeExécute n'importe quelle recette du catalogue par son slug - une procédure directe sans clé ou un flux en plusieurs étapes avec clé.

Recettes du catalogue

list_recipes + run_recipe exposent l'intégralité du catalogue whisper.security - 29 recettes organisées, sans nécessiter d'écrire du Cypher. Le catalogue intégré (src/catalog/recipes.json) est généré à partir de la source canonique avec npm run sync:catalog, il suit donc la plateforme.

Deux types :

  • Recettes directes (sans clé). Une procédure graphe unique qui s'exécute sans clé (limitée en débit) : assess (posture de menace), identify (fournisseur/opérateur), explain, variants, origins (dé-cloaking CDN), history / history-whois, walk, psl-tldplusone, psl-affiliation, asset, lookup-tor-relay, db-schema.
  • Recettes de flux (avec clé). Enquêtes organisées en plusieurs étapes qui nécessitent une clé API : 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" } } }

Chaque recette porte un docsUrl (visible dans list_recipes) renvoyant vers sa page sous whisper.security/docs.

Ressources

Six ressources MCP : le schéma complet, la carte des relations, une référence des fonctions Cypher, un livre de recettes de requêtes, plus les whisper://stats et whisper://quota en direct.

Invites

Huit modèles d'invite de flux de travail d'enquête : investigate-ip, map-attack-surface, compare-domains, blast-radius, threat-triage, whois-pivot, bgp-investigation, typosquat-sweep.

Auto-hébergement (Docker / HTTP)

Pour les déploiements distants ou d'équipe, exécutez le serveur via HTTP Streamable :

docker run -p 8080:8080 -e MCP_TRANSPORT=http \
  ghcr.io/whisper-sec/whisper-graph-mcp:latest

Ou avec Docker Compose :

docker compose up

En mode HTTP, le serveur n'authentifie pas les requêtes entrantes - il relaie l'en-tête X-API-Key ou Authorization: Bearer de l'appelant vers l'API WhisperGraph hébergée, en se repliant sur la variable d'environnement WHISPER_API_KEY lorsqu'aucun en-tête n'est présent. Placez-le derrière votre propre passerelle si vous avez besoin de contrôle d'accès.

Configuration

Toute la configuration se fait via des variables d'environnement.

VariableValeur par défautDescription
WHISPER_API_KEY(aucune)Votre clé API WhisperGraph. Obtenez-en une par programmation en 2 appels HTTP ou via le tableau de bord.
MCP_TRANSPORTstdiostdio pour une utilisation CLI locale, http pour distant/Docker.
HTTP_HOST0.0.0.0Hôte de liaison pour le transport HTTP.
HTTP_PORT8080Port de liaison pour le transport HTTP.
WHISPER_ALLOWED_HOSTS(aucune)Liste d'autorisation d'en-têtes Host séparés par des virgules pour la protection contre le rebinding DNS en mode HTTP. Laissez vide uniquement derrière une passerelle de confiance.
WHISPER_DB_URLhttps://graph.whisper.securityURL de base de l'API WhisperGraph hébergée.
WHISPER_QUERY_TIMEOUT_MS60000Délai strict par requête transmis à l'API.
WHISPER_DB_TIMEOUT_MS10000Délai d'attente HTTP pour les appels sans requête.
LOG_LEVELinfodebug, info, warn ou error.

Développement

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

Contribution

Les contributions sont les bienvenues. Voir CONTRIBUTING.md et notre Code de conduite. Problèmes de sécurité : voir SECURITY.md.

Licence

Apache-2.0. "Whisper", le logo Whisper et "WhisperGraph" sont des marques déposées de Whisper Security - voir NOTICE.