Configuration dans Cursor
Avant de configurer, choisissez une distribution (Docker ou npm) et mettez en place l'authentification (clé API ou OAuth 2.0). Ajoutez ensuite la configuration correspondante ci-dessous.
Le serveur MCP Axe peut être ajouté soit au niveau du projet, soit au niveau global :
- Au niveau du projet : Créez un fichier à
.cursor/mcp.jsondans le répertoire racine de votre projet - Au niveau global : Ouvrez les paramètres de Cursor, allez à Fonctionnalités > MCP, et cliquez sur Ajouter un nouveau serveur MCP. Cela ouvrira votre fichier de configuration global.
Si vous avez déjà d'autres serveurs définis, ajoutez le bloc axe-mcp-server à l'intérieur de l'objet mcpServers existant.
Docker
Clé API
Installation en un clic
Cliquez sur le lien ci-dessous pour installer directement le serveur axe MCP dans Cursor :
Installer le serveur axe MCP dans Cursor
Cursor vous invitera à confirmer l'installation. Sinon, suivez la configuration manuelle ci-dessous.
Configuration manuelle
{
"mcpServers": {
"axe-mcp-server": {
"command": "docker",
"args": [
"run",
"--add-host=host.docker.internal:host-gateway",
"-i",
"--rm",
"-e",
"AXE_SERVER_URL",
"-e",
"AXE_API_KEY",
"dequesystems/axe-mcp-server:latest"
],
"env": {
"AXE_API_KEY": "${env:AXE_API_KEY}"
}
}
}
}La configuration utilise "AXE_API_KEY": "${env:AXE_API_KEY}" pour une gestion sécurisée des entrées. La syntaxe ${env:AXE_API_KEY} indique à Cursor de tirer la valeur de vos variables système. Pour plus d'informations, voir documentation MCP de Cursor.
Utilisez-vous une instance axe régionale, en cloud privé ou sur site ? Ajoutez AXE_SERVER_URL au bloc env avec l'URL de base de votre instance :
"env": {
"AXE_API_KEY": "${env:AXE_API_KEY}",
"AXE_SERVER_URL": "https://your-axe-instance.example.com"
}Si omis, le serveur par défaut est https://axe.deque.com (instance SaaS partagée de Deque aux États-Unis). Voir Référence de configuration pour plus de détails.
OAuth 2.0
Avant de configurer, complétez Étape 1 : Authentification dans le guide d'authentification.
Lancez le serveur via @deque/axe-auth run, ce qui maintient le jeton d'accès du serveur en cours d'exécution à jour tant que la session dure.
{
"mcpServers": {
"axe-mcp-server": {
"command": "npx",
"args": [
"-y",
"@deque/axe-auth",
"run",
"--",
"docker",
"run",
"--add-host=host.docker.internal:host-gateway",
"-i",
"--rm",
"-p",
"127.0.0.1:9223:9223",
"-e",
"AXE_ACCESS_TOKEN",
"-e",
"AXE_TOKEN_REFRESH_PORT",
"-e",
"AXE_TOKEN_REFRESH_SECRET",
"-e",
"AXE_TOKEN_REFRESH_HOST=0.0.0.0",
"dequesystems/axe-mcp-server:latest"
],
"env": {
"AXE_TOKEN_REFRESH_PORT": "9223"
}
}
}
}Le rafraîchissement des jetons a atteint le serveur MCP axe dans v1.5.0. npx -y @deque/axe-auth récupère toujours la version actuelle de l'CLI, mais une image Docker extraite avant cette version n'a pas d'écouteur de rafraîchissement pour que run puisse y pousser — re-extraire avec docker pull dequesystems/axe-mcp-server:latest.
npx -y @deque/axe-auth run lance le conteneur et le supervise pendant toute la durée de la session, en envoyant un jeton d'accès fraîchement créé au serveur en cours d'exécution avant que le jeton actuel n'expire. Votre jeton de renouvellement ne quitte jamais votre machine — seuls les jetons d'accès de courte durée atteignent le serveur. L'indicateur -y passe le message « Ok pour continuer ? » que npx demanderait autrement dans un shell non interactif.
Les indicateurs restants existent pour rendre cette transmission accessible à l'intérieur du conteneur :
-p 127.0.0.1:9223:9223publie l'écouteur de renouvellement du serveur uniquement sur l'interface de loopback de l'hôte, le gardant hors des interfaces externes de votre machine.-e AXE_ACCESS_TOKEN,-e AXE_TOKEN_REFRESH_PORT, et-e AXE_TOKEN_REFRESH_SECRETtransmettent les valeurs générées parrundans le conteneur. Passez uniquement les noms, sans=value—runles fournit.-e AXE_TOKEN_REFRESH_HOST=0.0.0.0lie l'écouteur à l'interface réseau du conteneur. Un port publié redirige vers celui-ci plutôt que vers le loopback du conteneur, de sorte que la liaison par défaut sur le loopback serait inaccessible. Le secret partagé, et non l'isolation du conteneur, est ce qui protège le point de terminaison.
9223 est un exemple — tout port libre sur votre machine fonctionne, tant que AXE_TOKEN_REFRESH_PORT et le -p publient le même nom. Consultez Variables de renouvellement de jeton pour la référence complète.
Utilisez-vous une instance axe régionale, privée ou sur site ? Add AXE_SERVER_URL to the Docker command and to the env block, alongside the refresh port:
"args": [
"-y",
"@deque/axe-auth",
"run",
"--",
"docker",
"run",
"--add-host=host.docker.internal:host-gateway",
"-i",
"--rm",
"-p",
"127.0.0.1:9223:9223",
"-e",
"AXE_SERVER_URL",
"-e",
"AXE_ACCESS_TOKEN",
"-e",
"AXE_TOKEN_REFRESH_PORT",
"-e",
"AXE_TOKEN_REFRESH_SECRET",
"-e",
"AXE_TOKEN_REFRESH_HOST=0.0.0.0",
"dequesystems/axe-mcp-server:latest"
],
"env": {
"AXE_TOKEN_REFRESH_PORT": "9223",
"AXE_SERVER_URL": "https://your-axe-instance.example.com"
}Utilisez la même URL que vous avez transmise à --server lors de votre connexion, afin que les jetons émis par axe-auth proviennent de l'instance appelée par le serveur. Si elle est omise, le serveur utilise par défaut https://axe.deque.com (l'instance partagée SaaS US de Deque). Consultez Référence de configuration pour plus de détails.
npm
La distribution npm fonctionne sur Node.js. Utilisez une version LTS active de Node.js — les versions plus anciennes pourraient ne pas être prises en charge.
La distribution npm nécessite un navigateur Chromium — soit installez-en un via Playwright, soit pointez vers un binaire existant. Voir Choisir une distribution.
Clé API
Créez un fichier .cursor/mcp.json dans le répertoire racine de votre projet (niveau projet) ou ajoutez le serveur via les paramètres MCP globaux de Cursor :
{
"mcpServers": {
"axe-mcp-server": {
"command": "npx",
"args": ["-y", "axe-mcp-server"],
"env": {
"AXE_API_KEY": "your-api-key-here"
}
}
}
}Votre configuration contient un identifiant dans son bloc env. Les fichiers au niveau projet comme .cursor/mcp.json se trouvent dans votre dépôt — ajoutez-les à .gitignore, ou conservez les identifiants dans votre configuration globale à la place.
OAuth 2.0
OAuth 2.0 est également pris en charge avec la distribution npm. Enveloppez le serveur dans @deque/axe-auth run exactement comme ci-dessus — il n'y a pas de conteneur pour publier un port, donc la commande est plus courte :
{
"mcpServers": {
"axe-mcp-server": {
"command": "npx",
"args": [
"-y",
"@deque/axe-auth",
"run",
"--",
"npx",
"-y",
"axe-mcp-server"
],
"env": {
"AXE_TOKEN_REFRESH_PORT": "9223"
}
}
}
}npx -y @deque/axe-auth run lance le serveur et le supervise pendant toute la durée de la session, poussant un jeton d'accès fraîchement créé vers le processus en cours avant que le jeton actuel n'expire. Aucune publication de port n'est nécessaire ici : le processus encapsulé hérite directement de AXE_TOKEN_REFRESH_PORT et l'écouteur reste en boucle locale. 9223 est un exemple — n'importe quel port libre sur votre machine fonctionne, et la variable est ici facultative : omettez-la et run choisira un port libre pour la session.
Contrairement à un conteneur, la distribution npm hérite de l'ensemble de votre environnement shell. Si AXE_API_KEY y est exporté, il atteint le serveur en même temps que le jeton OAuth et le serveur refuse de démarrer. Définissez-le en dehors du shell à partir duquel vous lancez votre éditeur, ou utilisez la configuration Docker ci-dessus, qui ne reçoit que les variables transmises avec des drapeaux explicites -e.
Voir Authentification pour le flux complet.
Définissez soit AXE_API_KEY soit AXE_ACCESS_TOKEN — mais pas les deux. Le serveur échouera au démarrage si les deux variables sont définies.
Utilisation et vérification
Une fois ajouté, l'indicateur d'état dans les paramètres de Cursor devrait montrer que le serveur est en cours d'exécution :
- Ouvrez les paramètres de Cursor
- Aller à Fonctionnalités > MCP
- Vous devriez voir axe-mcp-server répertorié sous MCP Servers installés avec les outils d'analyse, de remédiation et igt disponibles.
Pour des instructions personnalisées recommandées qui guident Cursor à travers le flux de travail analyser-puis-remédier, voir Configurer votre agent AI.
