Bastion: External Attack Surface Monitoring
officielAsk your AI assistant about your attack surface: run scans, catch expiring certificates and domains, triage findings, and generate reports.
Que pouvez-vous faire avec Bastion External Attack Surface Monitoring MCP ?
- Lancer des analyses à la demande — Demandez à votre assistant d’exécuter
start_scansur un nom d’hôte vérifié et de renvoyer lescanIdpour le suivi. - Examiner les résultats d’analyse — Récupérez les conclusions complètes, les preuves, les étapes de remédiation et le score de posture via
get_scanpour toute analyse terminée. - Surveiller le flux de modifications — Utilisez
list_changespour voir ce qui a changé au niveau des sous-domaines, du DNS, des ports, des certificats et des conclusions. - Trier les conclusions — Accusez réception, mettez en sourdine ou acceptez une conclusion sur une cible avec
set_triage, y compris les suppressions expirées. - Générer des rapports PDF — Demandez
get_reportpour rendre une analyse terminée sous forme de PDF téléchargeable, ou interrogez aveccheck_reportsi l’opération est longue. - Gérer les domaines — Revendiquez de nouveaux domaines avec
add_domain, vérifiez la propriété viaverify_domainet listez tous les domaines revendiqués aveclist_domains.
Documentation
Documentation : Serveur MCP
Connectez votre assistant IA à votre surface d'attaque.
Bastion fournit un serveur MCP hébergé, afin que Claude et d'autres agents IA puissent lancer des scans, lire les résultats, surveiller le flux de changements, trier et récupérer des rapports PDF. Tout cela en chat, sur les domaines que votre compte a vérifiés, sans rien à installer et sans clés API à gérer.
Essai gratuit Guide de connexion ↓
Détails du serveur
| Point de terminaison | https://mcp.bastionscan.com/mcp |
|---|---|
| Transport | HTTP streamable (sans état ; SSE non requis) |
| Authentification | OAuth 2.1 : code d'autorisation + PKCE, enregistrement dynamique du client (RFC 7591), découverte via RFC 9728 / RFC 8414. Aucune clé API. |
| Portée | compte : accès délégué en tant qu'utilisateur qui approuve la connexion |
| Tarification | Inclus dans chaque forfait (les quotas du forfait s'appliquent). Les forfaits commencent par un essai de 7 jours, sans carte requise. |
| Révocation | Dans l'application : Équipe → Applications connectées → Déconnecter. Effectif à la prochaine requête. |
Connecter un client
Chaque client suit la même poignée de main : pointez-le vers le point de terminaison, une fenêtre de navigateur ouvre la page de consentement de Bastion, connectez-vous et cliquez sur Autoriser l'accès. Vous avez besoin d'un compte Bastion (l'essai fonctionne) mais aucune clé ni configuration supplémentaire.
Claude (web, bureau, mobile)
Paramètres → Connecteurs → Ajouter un connecteur personnalisé, puis collez l'URL du point de terminaison. Claude découvre la configuration OAuth et vous guide dans l'approbation.
https://mcp.bastionscan.com/mcp
Claude Code
claude mcp add --transport http bastion https://mcp.bastionscan.com/mcp
Ensuite, exécutez /mcp dans une session pour terminer la connexion.
ChatGPT
Les connecteurs MCP personnalisés nécessitent le mode développeur (forfaits Pro, Plus, Business, Enterprise et Edu, sur l'application web) : Paramètres → Applications → Paramètres avancés → Mode développeur. Ensuite, Paramètres → Connecteurs → Créer, collez l'URL du point de terminaison et choisissez OAuth comme méthode d'authentification. Sur les forfaits workspace, un administrateur peut devoir autoriser les connecteurs personnalisés au préalable.
OpenAI Codex
codex mcp add bastion --url https://mcp.bastionscan.com/mcp
codex mcp login bastion
La commande de connexion exécute le flux OAuth dans votre navigateur. La configuration se trouve dans ~/.codex/config.toml si vous préférez la gérer là-bas.
Hermes
Ajoutez le serveur dans le tableau de bord (hermes dashboard → Serveurs MCP), ou dans ~/.hermes/config.yaml :
mcp_servers:
bastion:
url: "https://mcp.bastionscan.com/mcp"
auth: oauth
Une fenêtre de navigateur s'ouvre pour l'autorisation lors de la première connexion.
Manus
Paramètres → Connecteurs → + Ajouter des connecteurs → MCP personnalisé → Configuration directe. Nommez-le Bastion, choisissez le transport HTTP, collez l'URL du point de terminaison et enregistrez ; Manus vérifie la connexion et vous guide dans la connexion.
OpenClaw
openclaw mcp add bastion --url https://mcp.bastionscan.com/mcp \
--transport streamable-http --auth oauth
openclaw mcp login bastion
La commande de connexion affiche l'URL d'autorisation et termine l'échange de jetons une fois que vous approuvez dans le navigateur. Vérifiez avec openclaw mcp status.
Cursor et autres clients MCP
Ajoutez le serveur à la configuration MCP de votre client :
{
"mcpServers": {
"bastion": { "url": "https://mcp.bastionscan.com/mcp" }
}
}
Essayez
Une fois connecté, demandez à votre assistant des choses comme :
- « Scannez bastionscan.com et résumez tout ce qui est nouveau depuis la semaine dernière. »
- « Quels de nos certificats expirent dans les 30 prochains jours ? »
- « Mettez en sourdine la constatation HSTS manquante sur staging jusqu'en mars, avec une note. »
- « Générez le rapport PDF du scan d'hier. »
- « Classez ces trois domaines sous le client Acme et résumez la posture de ce parc. » (forfaits MSP)
Outils disponibles
Le client connecté voit toujours la liste en direct via tools/list ; ce tableau est le résumé lisible par l'humain.
| Outil | Ce qu'il fait |
|---|---|
| get_account | Plan, statut d'abonnement et utilisation par rapport aux limites |
| list_domains | Domaines revendiqués, statut de vérification et enregistrement DNS TXT requis pour chacun |
| add_domain | Revendiquer un domaine ; renvoie l'enregistrement TXT à publier (rien n'est encore scanné) |
| verify_domain | Vérifier le jeton de propriété DNS TXT maintenant |
| start_scan | Mettre en file d'attente un scan passif d'un nom d'hôte vérifié ; renvoie un scanId |
| get_scan | Résultats complets pour un scan : constatations, preuves, remédiation, score de posture |
| list_scans | Scans récents avec scores récapitulatifs, du plus récent au plus ancien |
| get_report | Rendre un scan terminé en PDF et renvoyer un lien de téléchargement |
| check_report | Interroger un travail PDF qui a dépassé l'attente en ligne de get_report |
| list_changes | Ce qui a bougé dans le parc : sous-domaines, DNS, ports, certificats, constatations |
| list_lookalikes | Typosquats enregistrés de vos domaines (observés uniquement via DNS et journaux CT) |
| list_triage | États de triage par constatation, y compris les suppressions expirées |
| set_triage | Reconnaître, mettre en sourdine ou accepter une constatation sur une cible |
| list_clients | Espaces de travail clients et leurs nombres de domaines (forfaits MSP) |
| add_client | Créer un espace de travail client pour y classer des domaines (forfaits MSP, admin) |
| assign_domain_client | Classer un domaine sous un client : regroupement uniquement, règles de propriété inchangées |
| get_branding | L'identité en marque blanche apposée sur les rapports PDF (forfaits MSP) |
| set_branding | Définir le nom de l'entreprise et la couleur d'accent du rapport (forfaits MSP, admin) |
Questions
Ai-je besoin d'une clé API ?
Non. Le serveur utilise l'OAuth MCP standard : votre client s'enregistre lui-même, votre navigateur ouvre la page de consentement de Bastion, vous vous connectez avec votre compte habituel et cliquez sur Autoriser. Il n'y a rien à copier depuis un tableau de bord et rien de durable à fuir dans un fichier de configuration.
Que peut faire (et ne pas faire) un agent connecté ?
Il agit comme la personne qui a approuvé la connexion : il peut ajouter et vérifier des domaines, lancer des scans, lire les constatations et les rapports, surveiller le flux de changements et trier les constatations. Sur les forfaits MSP, il peut également organiser les espaces de travail clients et gérer la marque des rapports. Il ne peut pas toucher à la facturation, gérer l'équipe, ni voir les données d'un autre compte. L'accès peut être révoqué à tout moment dans l'application sous Équipe → Applications connectées, et la révocation prend effet à la prochaine requête de la connexion.
Peut-il scanner des sites web arbitraires ?
Non. La surface MCP passe exactement la même porte que l'application : un nom d'hôte n'est scannable qu'après que le compte prouve le contrôle de son domaine avec un enregistrement DNS TXT, et cette preuve est revérifiée chaque nuit. Demander à un agent connecté de scanner l'infrastructure de quelqu'un d'autre échoue de la même manière que dans l'interface.
Cela coûte-t-il plus cher ?
Non. Le serveur MCP est inclus dans chaque forfait, y compris l'essai gratuit. Les scans lancés via MCP comptent dans le même quota mensuel que les scans lancés dans l'application, et les rapports PDF générés lors de l'essai sans carte portent le même filigrane ESSAI.
Quels clients sont pris en charge ?
Tout ce qui parle MCP sur HTTP streamable avec OAuth : Claude (connecteurs web, bureau et mobile), Claude Code, ChatGPT (mode développeur), OpenAI Codex, Hermes, Manus, OpenClaw, Cursor, et d'autres clients MCP qui prennent en charge les serveurs distants avec enregistrement dynamique du client. Si votre client peut ajouter un serveur MCP distant par URL, il peut se connecter à Bastion, et le guide de connexion couvre chacun d'eux.
La connexion est-elle sûre à laisser en place ?
Les jetons sont de courte durée, stockés uniquement sous forme de hachages de notre côté, et liés à une connexion que vous pouvez voir et révoquer dans l'application, avec la personne qui l'a autorisée et la date de dernière utilisation. Si un membre de l'équipe part, ses connexions cessent de fonctionner dès que son adhésion prend fin.