[Blog et guides](https://openscreenshot.app/fr/blog/) · Développeurs et agents

# Configurer un serveur MCP local de capture d’écran pour un agent IA

Connectez OpenScreenShot à un client MCP stdio et demandez des captures PNG avec des options explicites d’URL, de zone d’affichage et de page entière.

Par [OpenScreenShot](https://github.com/pghqdev/OpenScreenShot)

OpenScreenShot fournit un serveur MCP local avec un seul outil : `capture_screenshot`. Un client MCP peut l’appeler avec l’URL d’une page web et recevoir un contenu image PNG. Le serveur lance un navigateur headless compatible Chrome séparé sur votre machine ; l’extension de navigateur n’est pas nécessaire.

## Ajouter le serveur à votre client MCP

Installez d’abord Node.js, pnpm et un navigateur compatible Chrome. Ajoutez une entrée de serveur dans le format de configuration de votre client. Les clients qui acceptent un objet `mcpServers` peuvent utiliser :

```
{
  "mcpServers": {
    "openscreenshot": {
      "command": "pnpm",
      "args": ["dlx", "openscreenshot"]
    }
  }
}
```

Le client doit pouvoir trouver `pnpm` dans son chemin d’exécutables. Redémarrez ou rechargez ses connexions MCP après avoir enregistré la configuration. Le serveur utilise stdio : le client démarre donc un processus local, et il n’y a aucune URL MCP hébergée à saisir.

Si Chrome est installé à un emplacement inhabituel, transmettez `CHROME_PATH` par la configuration d’environnement du client. Utilisez le chemin complet de l’exécutable, et non le dossier qui contient l’application.

## Appeler capture_screenshot

Une entrée minimale de l’outil est :

```
{ "url": "https://example.com" }
```

Elle produit une capture de la zone d’affichage à la taille par défaut de 1280 × 800. Définissez explicitement la zone d’affichage et l’option de page entière pour une requête reproductible :

```
{
  "url": "https://example.com",
  "fullPage": true,
  "width": 1440,
  "height": 900
}
```

`width` accepte des entiers de 200 à 3840 et `height` de 200 à 2160. L’outil renvoie un contenu image MCP de type MIME `image/png`. Cet outil n’a pas d’argument de chemin de sortie. L’affichage ou l’enregistrement du résultat dépend du client ; utilisez la [CLI](https://openscreenshot.app/fr/blog/screenshot-cli/) quand vous avez besoin directement d’un fichier nommé.

## Masquer les données avant que l’image quitte l’outil

Ajoutez un objet `redact` pour couvrir des données par des rectangles noirs dans la page avant la capture. Le client ne reçoit que l’image masquée :

```
{
  "url": "https://example.com",
  "redact": {
    "selectors": ["#account-menu"],
    "patterns": ["email", "phone", "secret"],
    "rects": [{ "x": 0, "y": 0, "width": 200, "height": 40 }]
  }
}
```

`selectors` couvre chaque élément correspondant, avec tous ses enfants. `patterns` couvre le texte et les valeurs de formulaire correspondants : `email`, `phone` (de 9 à 15 chiffres) et `secret` (formes courantes de clés d’API et de jetons, et longs hachages). `rects` couvre des rectangles en pixels de l’image de sortie, pour les canevas, les images et les iframes d’une autre origine. L’outil renvoie une erreur et aucune image si un sélecteur ne correspond à rien, si un rectangle sort de l’image ou si la page déplace une cible pendant la capture. Les motifs peuvent manquer du texte réparti sur plusieurs éléments ou dessiné dans une image.

## Ce que l’agent peut voir et ne peut pas voir

La capture démarre dans un navigateur headless neuf. Elle n’hérite ni des cookies ni de la session connectée de votre fenêtre Chrome habituelle. Une page derrière une authentification peut donc produire un écran de connexion. L’outil actuel ne propose ni étapes de connexion, ni injection de cookies, ni attente de sélecteur, ni clics interactifs.

Demandez à l’agent d’identifier ce qui est réellement visible dans l’image renvoyée avant de tirer des conclusions. Une capture peut aider à examiner la mise en page, les espacements et les erreurs visibles ; elle ne peut pas établir qu’un formulaire s’envoie correctement ni que la navigation au clavier fonctionne.

## Où va la capture ?

La capture est générée en local et renvoyée au client MCP. Si ce client utilise un modèle hébergé, il peut transmettre l’image renvoyée au fournisseur du modèle selon ses propres réglages. Une capture locale ne signifie pas que toute la conversation avec l’agent reste sur l’appareil. Utilisez `redact` pour les données qui ne doivent pas atteindre le fournisseur.

Pour des captures automatisées aux dimensions prévisibles, consultez [les captures en CI](https://openscreenshot.app/fr/blog/screenshots-for-ci/). Le [skill de capture pour agents](https://openscreenshot.app/skills/capture-screenshot.md) et le [code source du serveur](https://github.com/pghqdev/OpenScreenShot/blob/main/mcp/src/serve.ts) fournissent les instructions destinées aux machines et la définition de l’outil.

## Pour aller plus loin

[Lisez la documentation](https://openscreenshot.app/fr/docs/), [parcourez tous les guides](https://openscreenshot.app/fr/blog/) ou [obtenez de l’aide pour une capture](https://openscreenshot.app/fr/support/).

---

Canonical page: https://openscreenshot.app/fr/blog/screenshot-mcp-server/
