Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/snyk/agent-scan
Scanners de VulnérabilitésAnalyse Dynamique (Sandboxing)Analyse de CodeDétection de SecretsSécurité de la Chaîne LogistiqueSécurité de l'IATop en Sécurité de l'IA n°11
GitHubsnyk/agent-scan

agent-scan

Scanner de sécurité pour agents IA, serveurs MCP et compétences d'agents.

Voir le dépôt
2.9k258111il y a 3 joursVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
<p align="center">
  <h1 align="center">
  Snyk Agent Scan
  </h1>
</p>

<p align="center">
  Découvrez et analysez les composants d'agents sur votre machine pour détecter les injections de prompt<br/>
  et les vulnérabilités (y compris les agents, les serveurs MCP, les skills).
</p>

> **Remarque :** Nous ne publions pas de package npm pour Agent Scan. Installez-le via [`uvx`](#run-with-uvx) ou en tant que [binaire autonome](#run-with-a-standalone-binary).

> **Remarque : la sortie de la CLI est expérimentale et susceptible de changer**
>
> **Agent Scan v0.5.x (dépréciation prévue)**
>
> La sortie brute de cette CLI — y compris les codes d'incident, les noms de champs, les libellés de sévérité et la structure des réponses — est expérimentale et peut changer sans préavis entre les versions. Nous ne recommandons pas de construire des workflows de production qui dépendent de champs de sortie ou de codes d'incident spécifiques de la CLI.
>
> **Agent Scan v0.6 et versions ultérieures**
>
> La sortie brute de cette CLI — y compris les noms d'indicateurs de risque, les scores, les noms de champs et la structure des réponses — est expérimentale et peut changer sans préavis entre les versions. Nous ne recommandons pas de construire des workflows de production qui dépendent de champs de sortie ou de noms de risque spécifiques de la CLI.
>
> Si vous êtes un client entreprise utilisant Snyk pour gérer le risque de sécurité des agents à grande échelle, la sortie de la CLI peut ne pas refléter ce qui est envoyé et affiché dans la plateforme Evo. L'intégration sous-jacente, la découverte et l'évaluation des risques qui alimentent les déploiements entreprise sont stables et prises en charge — tout changement sera communiqué conformément aux pratiques produit standard de Snyk. Contactez votre équipe de compte pour obtenir des conseils de déploiement.

> **NOUVEAU** Lisez notre [rapport technique sur les menaces émergentes de l'écosystème des skills d'agents](https://github.com/snyk/agent-scan/blob/main/.github/reports/skills-report.pdf) publié avec Agent Scan 0.4, qui ajoute la prise en charge de l'analyse des skills d'agents.

<p align="center">
  <a href="https://pypi.python.org/pypi/snyk-agent-scan"><img src="https://img.shields.io/pypi/v/snyk-agent-scan.svg" alt="snyk-agent-scan"/></a>
  <a href="https://pypi.python.org/pypi/snyk-agent-scan"><img src="https://img.shields.io/pypi/l/snyk-agent-scan.svg" alt="snyk-agent-scan license"/></a>
  <a href="https://pypi.python.org/pypi/snyk-agent-scan"><img src="https://img.shields.io/pypi/pyversions/snyk-agent-scan.svg" alt="snyk-agent-scan python version requirements"/></a>
</p>

### Sortie d'Agent Scan v0.5.x

> [!WARNING]
> Agent Scan v0.5.x utilise une sortie avec codes d'incident. Cette ligne de CLI est prévue pour être dépréciée.

<div align="center">
  <img width="1304" height="976" alt="agent-scan-pretty" src="https://assets.kitploit.com/production/public/readmes/721/98fbbb9009fa00bb52906b85514664b3d4834bd558b2b9fb3bce959cfa87a4e8.png" />
</div>

### Sortie d'Agent Scan v0.6 et versions ultérieures

<div align="center">
  <img width="1000" alt="Agent Scan v0.6 and later report showing scored MCP server and skill risks" src="https://raw.githubusercontent.com/snyk/agent-scan/HEAD/demo-v0.6.svg" />
</div>

<br>

Agent Scan vous aide à découvrir tous vos composants d'agents installés (harnais, serveurs MCP et skills) et les analyse pour détecter des menaces courantes telles que les injections de prompt, la manipulation de données sensibles ou les charges malveillantes cachées dans le langage naturel. Ignorez l'analyse des skills en utilisant `--no-skills`.

## Avertissement de sécurité

> **⚠️ IMPORTANT : L'analyse des configurations MCP peut exécuter des commandes ou effectuer des requêtes réseau sortantes.**
>
> Pour récupérer les descriptions des outils, Agent Scan démarre les serveurs MCP stdio en exécutant les commandes de la configuration et se connecte aux URL des serveurs MCP distants configurés avec leurs en-têtes configurés.
>
> **Recommandations :**
> - **Exécutez les analyses dans un bac à sable** (conteneur Docker, VM ou environnement jetable) lors de l'évaluation de configurations MCP non fiables ou tierces
> - **Examinez attentivement l'invite de consentement** lors des analyses interactives ; elle affiche la commande ou l'URL distante pour chaque serveur
> - **Utilisez `--dangerously-run-mcp-servers`** uniquement dans des environnements de confiance où vous avez vérifié toutes les commandes des serveurs MCP et les URL distantes
>
> Les requêtes MCP distantes refusent les destinations qui se résolvent vers des adresses link-local ou des points de terminaison de métadonnées cloud connus (`169.254.0.0/16`, `fe80::/10`, `fd00:ec2::254` et `100.100.100.200`). Les adresses de bouclage et privées restent autorisées pour les serveurs MCP locaux et internes. Les redirections HTTP ne sont pas suivies. Le DNS est validé avant chaque requête, mais une résolution à nouveau au moment de la connexion laisse une fenêtre de DNS rebinding.
>
> Par défaut, Agent Scan exige le consentement explicite de l'utilisateur (y/n) avant de contacter chaque serveur MCP découvert lors des exécutions interactives au premier plan. Les analyses en arrière-plan et par push-key continuent d'inspecter automatiquement les serveurs distants pour la couverture de la flotte, mais ne démarrent pas les serveurs stdio sauf si `--dangerously-run-mcp-servers` est défini.

## Démarrage rapide

Choisissez l'une des deux façons d'exécuter Agent Scan :

1. **Exécutez le package Python avec `uvx`** en suivant les instructions ci-dessous.
2. **Téléchargez un binaire autonome** pour votre plateforme depuis [GitHub Releases](https://github.com/snyk/agent-scan/releases). Les versions incluent également le SBOM, les sommes de contrôle, les sommes de contrôle signées et les archives du code source.

Avant d'utiliser l'une ou l'autre option :

1. **Inscrivez-vous sur [Snyk](https://snyk.io)** et obtenez un jeton d'API depuis [https://app.snyk.io/account](https://app.snyk.io/account) (API Token → KEY → cliquez pour afficher).
2. **Définissez le jeton comme variable d'environnement** avant d'exécuter toute analyse :
   ```bash
   export SNYK_TOKEN=your-api-token-here
   ```

### Exécuter avec `uvx`

Ayez [uv](https://docs.astral.sh/uv/getting-started/installation/) installé sur votre système. Choisissez les instructions correspondant à votre version de CLI.

#### Agent Scan v0.5.x

Les exemples épinglent v0.5.17 comme version concrète de la branche v0.5.x :

```bash
# Scan the whole machine
uvx [email protected]

# Scan a specific MCP configuration
uvx [email protected] ~/.vscode/mcp.json

# Scan a single agent skill
uvx [email protected] ~/path/to/my/SKILL.md

# Scan all Claude skills
uvx [email protected] ~/.claude/skills
```

> [!WARNING]
> v0.5.x utilise la sortie issue-code et l'API d'analyse `2025-09-02`. Cette ligne de CLI est prévue pour être dépréciée.

#### Agent Scan v0.6 et versions ultérieures

```bash
# Scan the whole machine
uvx snyk-agent-scan@latest

# Scan a specific MCP configuration
uvx snyk-agent-scan@latest ~/.vscode/mcp.json

# Scan a single agent skill
uvx snyk-agent-scan@latest ~/path/to/my/SKILL.md

# Scan all Claude skills
uvx snyk-agent-scan@latest ~/.claude/skills
```

Les versions v0.6 et ultérieures utilisent la sortie basée sur les risques et l'API d'analyse `2026-07-10`.

Les deux versions analysent les serveurs MCP, les outils, les prompts, les ressources et les compétences, et découvrent automatiquement les configurations d'agents prises en charge telles que Claude Code/Desktop, Cursor, Gemini CLI et Windsurf.

### Exécution avec un binaire autonome

Téléchargez le binaire correspondant à votre système d'exploitation et à votre architecture depuis la [dernière version GitHub](https://github.com/snyk/agent-scan/releases/latest). La page de version fournit également un SBOM (`sbom-<version>.json`), des fichiers de somme de contrôle et des archives de code source générées par GitHub. Consultez [Vérification des binaires autonomes](#verifying-standalone-binaries) pour vérifier votre téléchargement.

## Points forts

- Découverte automatique des configurations MCP, des outils d'agents, des compétences
- Analyse de Claude, Cursor, GitHub Copilot, Windsurf, Gemini CLI, Amp, Amazon Q et d'autres agents.

### Agent Scan v0.5.x

- Détecte [plus de 15 risques de sécurité distincts](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md) sur les serveurs MCP et les compétences d'agents :
  - MCP : [Injection de prompt](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md#E001), [Empoisonnement d'outil](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md#E001), [Masquage d'outil](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md#E002), [Flux toxiques](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md#ToxicFlows)
  - Compétences : [Injection de prompt](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md#E004), [Charges malveillantes](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md#E006), [Contenu non fiable](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md#W011), [Gestion des identifiants](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md#W007), [Secrets codés en dur](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md#W008)

### Agent Scan v0.6 et ultérieurs

- Détecte [14 risques de sécurité distincts](https://github.com/snyk/agent-scan/blob/main/docs/risks.md) sur les serveurs MCP et les compétences d'agents :
  - MCP : [Injection de prompt](https://github.com/snyk/agent-scan/blob/main/docs/risks.md#prompt_injection_tool_desc), [contenu non fiable](https://github.com/snyk/agent-scan/blob/main/docs/risks.md#untrusted_content), [données privées](https://github.com/snyk/agent-scan/blob/main/docs/risks.md#private_data) et [capacités destructrices](https://github.com/snyk/agent-scan/blob/main/docs/risks.md#destructive_capabilities)
  - Compétences : [injection de prompt](https://github.com/snyk/agent-scan/blob/main/docs/risks.md#prompt_injection_skill_instructions), [téléchargements suspects](https://github.com/snyk/agent-scan/blob/main/docs/risks.md#suspicious_download_url), [code malveillant](https://github.com/snyk/agent-scan/blob/main/docs/risks.md#malicious_code), [gestion des identifiants](https://github.com/snyk/agent-scan/blob/main/docs/risks.md#insecure_credential_handling), [détection de secrets](https://github.com/snyk/agent-scan/blob/main/docs/risks.md#secret_detection), et plus encore

## Agents et capacités pris en charge

Agent Scan découvre automatiquement les agents et leurs capacités (serveurs MCP ou compétences) lorsque leurs chemins d'installation existent. Le tableau ci-dessous indique sur quels systèmes d'exploitation chaque agent est analysé.

- **✓** : au moins un chemin est défini pour cette capacité.
- **✗** : l'agent est répertorié pour ce système d'exploitation mais n'a aucun chemin pour cette capacité.
- **—** : cet agent n'est pas inclus pour ce système d'exploitation.
- **Compétences** Les compétences peuvent être ignorées en utilisant `--no-skills`

| Agent | macOS MCP | macOS Compétences | Linux MCP | Linux Compétences | Windows MCP | Windows Compétences |
| --- | :---: | :---: | :---: | :---: | :---: | :---: |
| Windsurf | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Cursor | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| VS Code | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| GitHub Copilot | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Claude Desktop | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ |
| Claude Code | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini CLI | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| OpenClaw | ✗ | ✓ | ✗ | ✓ | ✗ | ✓ |
| Amp | ✗ | ✓ | ✗ | ✓ | ✗ | ✓ |
| Kiro | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| OpenCode | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Antigravity | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Codex | ✓ | ✓ | ✓ | ✓ | — | — |
| Amazon Q | ✓ | ✗ | ✓ | ✗ | ✓ (WSL) | ✗ |

### Couverture de détection par périmètre

La matrice ci-dessus indique sur quels systèmes d'exploitation chaque agent est analysé. Celle-ci décompose la détection par **périmètre de configuration** et **type de composant** (compétences vs serveurs MCP), combinés sur l'ensemble des systèmes d'exploitation. « Serveurs » désigne les serveurs MCP.

Les quatre périmètres :

- **Système** — configuration à l'échelle de la machine / gérée par l'administrateur / d'entreprise qui s'applique à tous les utilisateurs (par ex. `managed-mcp.json`, fichiers sous `/etc`, `/Library/Application Support` ou `ProgramData`).
- **Utilisateur** — la configuration du répertoire personnel de l'utilisateur (s'applique à tous ses projets).
- **Projet / espace de travail** — configuration limitée à un projet ou un espace de travail ouvert.
- **Extension / plugin** — composants intégrés dans les extensions ou plugins installés.

Légende : **✓** détecté · **✗** l'agent prend en charge cela mais Agent Scan ne l'analyse pas encore · **N/A** l'agent n'a pas de tel composant à ce périmètre.

| Agent | Système<br>compétences | Système<br>serveurs | Utilisateur<br>compétences | Utilisateur<br>serveurs | Projet / WS<br>compétences | Projet / WS<br>serveurs | Ext / plugin<br>compétences | Ext / plugin<br>serveurs |
| --- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
| Windsurf | ✓ | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Cursor | N/A | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| VS Code | N/A | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| GitHub Copilot § | N/A | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Claude Desktop | N/A | N/A | ✗ | ✓ | N/A | N/A | ✓ | ✓ |
| Claude Code | ✗ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini CLI | N/A | ✗ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ |
| OpenClaw | N/A | N/A | ✓ | ✗ | ✓ † | N/A | ✗ | ✗ |
| Amp | N/A | ✗ | ✓ | ✗ | ✗ ‡ | ✗ | ✗ | ✗ |
| Kiro | N/A | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| OpenCode | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | N/A | N/A |
| Antigravity | N/A | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Codex | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Amazon Q | N/A | N/A | N/A | ✓ | N/A | ✗ | N/A | N/A |

† OpenClaw n'a pas d'énumération des projets ouverts : ses compétences de projet/espace de travail ne sont trouvées qu'à l'emplacement fixe `~/.openclaw/workspace/skills`

‡ Amp stocke les compétences de projet/espace de travail dans `.agents/skills` (et le chemin de compatibilité `.claude/skills`) ; seul le périmètre utilisateur `~/.config/agents/skills` est détecté aujourd'hui, donc les compétences de périmètre projet sont prises en charge mais pas encore analysées.

§ GitHub Copilot couvre la CLI et l'application de bureau, qui partagent le répertoire personnel `~/.copilot` avec Copilot dans VS Code, et est détecté depuis ce répertoire plutôt que depuis une installation VS Code. Les relocalisations via `COPILOT_HOME` sont prises en compte lors de l'analyse de votre propre répertoire personnel. Le périmètre projet couvre les fichiers `.mcp.json` / `.github/mcp.json` relatifs au dépôt et les répertoires `.github/skills`, `.claude/skills` et `.agents/skills`, pour les dossiers passés à l'analyse et les répertoires que Copilot a enregistrés dans `permissions-config.json`, ainsi que leurs ancêtres. Le périmètre plugin couvre `~/.copilot/installed-plugins`, y compris les manifestes `plugin.json` qui relocalisent leur configuration MCP ou déclarent des racines de compétences supplémentaires. Non analysés : les racines de projet par session dans `session-state/*/workspace.yaml`. Les chemins au niveau utilisateur de Copilot sont également répertoriés sous VS Code, qui lit les mêmes fichiers.

La découverte des plugins Claude Desktop est prise en charge sur macOS et Linux. Pour Claude Code, les événements de découverte d'installation et de démarrage de session de Guard signalent également les connecteurs enregistrés depuis `claude-code-sessions/*/*/local_*.json` et `local-agent-mode-sessions/*/*/local_*.json`, regroupés par organisation et dédupliqués par UUID de connecteur en utilisant les métadonnées de session les plus récentes. Seuls l'UUID, le nom, l'URL, les définitions d'outils et les instructions de chaque connecteur sont envoyés ; les autres champs tels que les en-têtes sont supprimés, et les valeurs de requête d'URL sont masquées. Sous Windows, la découverte des connecteurs utilise `~/AppData/Roaming/Claude` avec la même disposition de session supposée, qui n'a pas encore été vérifiée sur une machine Windows. La découverte des plugins sous Windows reste non prise en charge.

## Vérification des binaires autonomes

Nous utilisons la signature GPG sur le fichier de sommes de contrôle de la version pour garantir l'intégrité et l'authenticité de la distribution.

### Guide de vérification étape par étape

1. **Téléchargez les ressources de la version :**
   Téléchargez le binaire correspondant à votre plateforme (par ex. `agent-scan-<version>-<os>-<arch>`) et le fichier de sommes de contrôle signé (`sha256sums.txt.asc`) depuis la page [GitHub Releases](https://github.com/snyk/agent-scan/releases) dans le même répertoire.

2. **Vérifiez la signature GPG du fichier de sommes de contrôle :**
   Téléchargez la [clé publique GPG](https://github.com/snyk/agent-scan/blob/main/help/_about-this-project/snyk-code-signing-public.pgp) dans le même répertoire, puis exécutez :
   ```bash
   gpg --import snyk-code-signing-public.pgp
   gpg --verify sha256sums.txt.asc
   ```
   Cherchez une ligne dans la sortie indiquant `gpg: Good signature from "Snyk Limited <[email protected]>"`.

3. **Vérifiez l'intégrité du binaire :**
   Après avoir confirmé que la signature est valide, vérifiez que votre binaire téléchargé correspond à la somme de contrôle :
   * **Sur Linux (ou macOS avec `coreutils`) :**
     ```bash
     grep agent-scan-<version>-<os>-<arch> sha256sums.txt.asc | sha256sum -c -
     ```
   * **Sur macOS (en utilisant `shasum` par défaut) :**
     ```bash
     grep agent-scan-<version>-<os>-<arch> sha256sums.txt.asc | shasum -a 256 -c -
     ```
   Cela affichera `agent-scan-<version>-<os>-<arch>: OK`.

## Capacités du scanner

### Agent Scan v0.5.x

Agent Scan est un outil d'analyse de sécurité permettant à la fois d'analyser et d'inspecter la chaîne d'approvisionnement des composants d'agents sur votre machine. Il recherche les vulnérabilités de sécurité courantes telles que les injections de prompt, l'empoisonnement d'outils, les flux toxiques ou les vulnérabilités dans les compétences des agents.

### Agent Scan v0.6 et versions ultérieures

Agent Scan signale des indicateurs de risque notés pour des menaces telles que l'injection de prompt, l'exposition à des données non fiables ou privées, les capacités destructrices et les compétences d'agents malveillantes.

Agent Scan fonctionne selon deux modes principaux qui peuvent être utilisés conjointement ou séparément :

1. **Mode Scan** : La commande CLI `snyk-agent-scan` analyse la machine actuelle à la recherche d'agents et de composants d'agents tels que les compétences et les serveurs MCP. Une fois terminé, il génère un rapport complet que l'utilisateur peut consulter.

2. **Mode arrière-plan** (MDM). Agent Scan analyse la machine à intervalles réguliers en arrière-plan et transmet les résultats à une instance [Snyk Evo](https://evo.ai.snyk.io). Cela peut être utilisé par les équipes de sécurité pour surveiller la chaîne d'approvisionnement des agents à l'échelle de l'entreprise depuis un emplacement central. Pour configurer cela, veuillez [nous contacter](https://evo.ai.snyk.io/#contact-us).

## Comment ça fonctionne

### Analyse

Agent Scan parcourt les fichiers de configuration de votre agent local pour trouver les agents, les compétences et les serveurs MCP. Pour MCP, il se connecte aux serveurs et récupère les descriptions des outils.

#### Consentement interactif pour les serveurs MCP

> **⚠️ Note de sécurité** : L'analyse d'une configuration MCP peut exécuter ses commandes stdio ou effectuer des requêtes sortantes vers ses URL distantes. Examinez toujours ce qui sera contacté avant d'approuver.

Par défaut, Agent Scan demande le consentement de l'utilisateur avant de contacter chaque serveur MCP découvert lors des exécutions interactives. Ce flux de consentement :

- Affiche le nom du serveur et sa commande ou son URL distante ; les variables d'environnement et les en-têtes sont masqués
- Vous permet d'approuver ou de refuser chaque serveur individuellement
- Empêche que des serveurs potentiellement non fiables soient contactés sans votre autorisation explicite
- Enregistre les serveurs refusés avec une erreur `user_declined` (ils ne sont jamais contactés)

**Bonnes pratiques :**
- Examinez attentivement les commandes, les arguments et les URL distantes avant d'approuver
- Lors de l'analyse de configurations MCP non fiables ou tierces, exécutez Agent Scan dans un bac à sable (Docker, VM ou environnement jetable)
- Refusez tout serveur dont les commandes sont inconnues ou suspectes

Les environnements non interactifs (par exemple, les analyses en arrière-plan et push-key) inspectent automatiquement les serveurs MCP distants. Ils ne démarrent pas les serveurs stdio sauf si `--dangerously-run-mcp-servers` est défini. **N'utilisez ce flag que dans des environnements de confiance où toutes les commandes des serveurs MCP et les URL distantes ont été vérifiées.**

#### Analyse et validation

Agent Scan valide les composants découverts à l'aide de vérifications locales et de l'API Agent Scan. Il envoie les informations sur les composants nécessaires à l'analyse, notamment les détails de l'application agent, les configurations et signatures des serveurs MCP, les noms et descriptions des outils, ainsi que le contenu des compétences. Les secrets présents dans les valeurs de configuration et le texte sont masqués avant la transmission.

En utilisant Agent Scan, vous acceptez les [conditions d'utilisation de Snyk pour Agent Scan](https://github.com/snyk/agent-scan/blob/main/TERMS.md).

Agent Scan ne stocke ni ne journalise aucune donnée d'utilisation, c'est-à-dire le contenu et les résultats de vos appels d'outils MCP.

## Paramètres CLI

La référence complète des flags se trouve dans [docs/cli-reference.md](https://github.com/snyk/agent-scan/blob/main/docs/cli-reference.md). La plupart des commandes et des flags sont partagés entre la v0.5.x et la v0.6 et versions ultérieures.

### Commandes partagées

```text
snyk-agent-scan scan [CONFIG_FILE...]       Scan MCP servers and skills (default)
snyk-agent-scan inspect [CONFIG_FILE...]    Inspect components without analysis
snyk-agent-scan help                        Display help
```

### Options partagées par les deux lignes de version

Ces options existent à la fois dans v0.5.x et v0.6 et versions ultérieures. Leur applicabilité aux commandes est détaillée dans la référence complète de la CLI.

```text
--storage-file FILE               Path to store scan state (default: ~/.mcp-scan)
--analysis-url URL                Analysis endpoint; the default API version depends on the CLI version
--verification-H HEADER           Additional analysis request header (repeatable)
--mcp-oauth-tokens-path PATH      OAuth tokens for protected remote MCP servers
--verbose                         Enable detailed logging
--print-errors                    Show error details and tracebacks
--print-full-descriptions         Show full entity descriptions without truncation
--json                            Emit JSON; the response schema depends on the CLI version
--skip-ssl-verify                 Disable TLS certificate verification
--skills / --no-skills            Include skills (default) or skip them
--scan-all-users                  Scan all readable user home directories
--show-analysis-results           Force synchronous analysis so results display for push-key scans
--ci                              Exit non-zero when findings or operational failures remain
--server-timeout SECONDS          MCP connection timeout (default: 10)
--suppress-mcpserver-io BOOL      Suppress stdio MCP server stderr
--dangerously-run-mcp-servers     Skip consent and contact all configured MCP servers
--control-server URL              Upload destination (repeatable)
--control-server-H HEADER         Header for the current control-server block
--control-identifier ID           Identifier for the current control-server block
--no-bootstrap                    Accepted compatibility no-op; does not change behavior
--checks-per-server NUM           Accepted compatibility no-op; does not change behavior
```

### Agent Scan v0.5.x

> [!WARNING]
> La version v0.5.x est prévue pour être dépréciée. Les exemples épinglent la v0.5.17 comme version concrète de la série v0.5.x.

```text
--analysis-url URL                Defaults to the 2025-09-02 analysis API
--ignore-issues-codes CODES       Comma-separated E/W security finding codes and X failure codes to ignore in CI
```

v0.5.x émet des résultats de code d'issue et un JSON `ScanPathResult` indexé par chemin. Voir la [référence CLI v0.5.x](https://github.com/snyk/agent-scan/blob/main/docs/cli-reference.md#agent-scan-v05x) et la [référence des codes d'issue](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md).

### Agent Scan v0.6 et versions ultérieures

```text
--analysis-url URL                Defaults to the 2026-07-10 analysis API
--ignore-risks NAMES              Comma-separated risk names to omit from output and CI evaluation
--ignore-failure-codes CODES      Comma-separated X codes to omit from CI evaluation
--show-full-discovery             List every MCP entity and skill file instead of compact scan summaries
```

v0.6 et versions ultérieures émettent des indicateurs de risque notés et un JSON `scan_path_responses`. La sortie de scan lisible par l'humain est compacte par défaut ; `--show-full-discovery` la développe sans modifier le JSON ni la sortie `inspect`. Voir la [référence CLI v0.6 et versions ultérieures](https://github.com/snyk/agent-scan/blob/main/docs/cli-reference.md#agent-scan-v06-and-later), la [référence des risques](https://github.com/snyk/agent-scan/blob/main/docs/risks.md) et la [référence des codes d'échec](https://github.com/snyk/agent-scan/blob/main/docs/failure-codes.md).

### Exemples

```bash
# Scan all known MCP configs and agent skills
snyk-agent-scan

# Scan a specific config file or skill
snyk-agent-scan ~/custom/config.json
snyk-agent-scan ~/path/to/my/SKILL.md

# Inspect without security analysis
snyk-agent-scan inspect

# CI mode
snyk-agent-scan --ci --dangerously-run-mcp-servers
```

## Démo

Ce dépôt inclut un serveur MCP vulnérable qui illustre les conclusions de sécurité du Model Context Protocol que Agent Scan signale.

Comment faire une démo des conclusions de sécurité MCP ?

1. Clonez ce dépôt
2. Créez un fichier de configuration `mcp.json` dans le répertoire racine du dépôt git cloné avec le contenu suivant :

```jsonc
{
  "mcpServers": {
    "Demo MCP Server": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "mcp", "run", "demoserver/server.py"],
    },
  },
}
```

3. Exécutez la version appropriée :

   - Agent Scan v0.5.x (sortie issue-code) : `uvx --python 3.13 [email protected] scan mcp.json`
   - Agent Scan v0.6 et versions ultérieures (sortie basée sur les risques) : `uvx --python 3.13 snyk-agent-scan@latest scan mcp.json`

Remarque : si vous placez le fichier de configuration `mcp.json` ailleurs, ajustez le chemin `args` dans la configuration du serveur MCP pour refléter le chemin vers le serveur MCP (`demoserver/server.py`) ainsi que la commande `uvx` qui exécute Agent Scan avec le chemin correct vers `mcp.json`.

## Agent Scan est fermé aux contributions

Agent Scan n'accepte pas de contributions externes pour le moment.

Nous accueillons les suggestions, les rapports de bogues ou les demandes de fonctionnalités sous forme d'issues GitHub.

## Configuration de développement

Pour exécuter Agent Scan depuis les sources, suivez ces étapes :

```bash
uv run pip install -e .
uv run -m src.agent_scan.cli
```

## Inclure les résultats d'Agent Scan dans votre propre projet / registre

Si vous souhaitez inclure les résultats d'Agent Scan dans votre propre projet ou registre, veuillez [nous contacter](https://evo.ai.snyk.io/#contact-us). Des API dédiées existent à cette fin. L'utilisation de l'API standard d'Agent Scan pour une analyse à grande échelle est considérée comme un abus et entraînera le blocage de votre compte.

## Documentation

- [Index de la documentation](https://github.com/snyk/agent-scan/blob/main/docs/README.md) — Documentation versionnée pour les deux lignes de CLI.
- [Référence CLI](https://github.com/snyk/agent-scan/blob/main/docs/cli-reference.md) — Commandes, drapeaux, options et variables d'environnement des versions v0.5.x et v0.6-et-ultérieures.
- [Analyse](https://github.com/snyk/agent-scan/blob/main/docs/scanning.md) — Comportement et exemples d'analyse des versions v0.5.x et v0.6-et-ultérieures.
- [Sortie JSON](https://github.com/snyk/agent-scan/blob/main/docs/json-output.md) — La sortie indexée par clé de la v0.5.x et le schéma de réponse de la v0.6.
- [Codes de problème](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md) — Référence des constats de sécurité `E*` et `W*` de la v0.5.x.
- [Référence des risques](https://github.com/snyk/agent-scan/blob/main/docs/risks.md) — Indicateurs de risque de sécurité, scores et champs de preuve de la v0.6.
- [Codes d'échec](https://github.com/snyk/agent-scan/blob/main/docs/failure-codes.md) — Échecs opérationnels de découverte, d'inspection et d'analyse de la v0.6.

## Pour aller plus loin

- [Introducing MCP-Scan](https://invariantlabs.ai/blog/introducing-mcp-scan)
- [MCP Security Notification Tool Poisoning Attacks](https://invariantlabs.ai/blog/mcp-security-notification-tool-poisoning-attacks)
- [WhatsApp MCP Exploited](https://invariantlabs.ai/blog/whatsapp-mcp-exploited)
- [MCP Prompt Injection](https://simonwillison.net/2025/Apr/9/mcp-prompt-injection/)
- [Toxic Flow Analysis](https://invariantlabs.ai/blog/toxic-flow-analysis)
- [Skills Report](https://github.com/snyk/agent-scan/blob/main/.github/reports/skills-report.pdf)

## Journal des modifications

Voir [CHANGELOG.md](https://github.com/snyk/agent-scan/blob/main/CHANGELOG.md).
Télécharger l’outil