Configurazione in VS Code con Copilot
Prima di configurare, scegli una distribuzione (Docker o npm) e configura l'autenticazione (chiave API o OAuth 2.0). Quindi aggiungi la configurazione corrispondente qui sotto.
La configurazione può essere utilizzata sia a livello di progetto che a livello di impostazioni utente (per tutti i progetti). Per la configurazione a livello di progetto, crea un file .vscode/mcp.json nel tuo spazio di lavoro. Per una configurazione a livello di impostazioni utente, aggiungi un server MCP al tuo file di configurazione utente esistente. Per maggiori informazioni, vedi il documentazione VS Code MCP.
Docker
API key
{
"inputs": [
{
"type": "promptString",
"id": "axe-api-key",
"description": "axe MCP Server API Key",
"password": true
}
],
"servers": {
"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": "${input:axe-api-key}"
}
}
}
}La configurazione utilizza "AXE_API_KEY": "${input:axe-api-key}" per la gestione sicura degli input. Ti verrà richiesto di inserire la tua chiave API quando il server si avvia per la prima volta.
Utilizzi un'istanza axe regionale, cloud privata o on-premises? Aggiungi AXE_SERVER_URL al blocco env con l'URL di base della tua istanza:
"env": {
"AXE_API_KEY": "${input:axe-api-key}",
"AXE_SERVER_URL": "https://your-axe-instance.example.com"
}Se omesso, il server usa di default https://axe.deque.com (l'istanza SaaS condivisa per gli Stati Uniti di Deque). Vedi Riferimento di configurazione per i dettagli.
OAuth 2.0
Prima di configurare, completa Passo 1: Autenticazione nella guida all'autenticazione.
Avvia il server tramite @deque/axe-auth run, che mantiene fresco il token di accesso del server in esecuzione per tutto il tempo della sessione. Non è necessario alcun blocco inputs — le credenziali vengono recuperate automaticamente dal portachiavi di sistema.
{
"servers": {
"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"
}
}
}
}Il refresh del token ha raggiunto il server MCP dell'ascia in v1.5.0. npx -y @deque/axe-auth recupera sempre la CLI corrente, ma un'immagine Docker scaricata prima di quella versione non ha alcun ascoltatore di refresh per run a cui inviare — riscaricalo con docker pull dequesystems/axe-mcp-server:latest.
npx -y @deque/axe-auth run avvia il container e lo supervisiona per tutta la durata della sessione, inviando un token di accesso appena generato al server in esecuzione prima che quello attuale scada. Il tuo token di aggiornamento non lascia mai il tuo computer: solo i token di accesso di breve durata raggiungono il server. Il flag -y salta il prompt iniziale "Ok per procedere?" che altrimenti npx chiederebbe in una shell non interattiva.
I rimanenti flag esistono per rendere disponibile tale invio all'interno del container:
-p 127.0.0.1:9223:9223pubblica il listener di aggiornamento del server solo su loopback host, mantenendolo lontano dalle interfacce esterne del tuo computer.-e AXE_ACCESS_TOKEN,-e AXE_TOKEN_REFRESH_PORTe-e AXE_TOKEN_REFRESH_SECRETinoltrano i valori generati darunnel container. Passa solo i nomi, senza=value—runli fornisce.-e AXE_TOKEN_REFRESH_HOST=0.0.0.0collega il listener all'interfaccia di rete del container. Una porta pubblicata inoltra lì piuttosto che al loopback del container, quindi il bind predefinito del loopback sarebbe irraggiungibile. Il segreto condiviso, non l'isolamento del container, è ciò che protegge il punto finale.
9223 è un esempio — qualsiasi porta libera sul tuo computer funziona, purché AXE_TOKEN_REFRESH_PORT e il -p pubblicano lo stesso nome. Vedi Variabili di aggiornamento token per il riferimento completo.
Utilizzi un'istanza axe regionale, privata o locale? Aggiungi AXE_SERVER_URL al comando Docker e al blocco env, insieme alla porta di aggiornamento:
"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"
}Usa lo stesso URL che hai passato a --server quando hai effettuato l'accesso, così i token che axe-auth genera provengono dall'istanza chiamata dal server. Se omesso, il server utilizza per default https://axe.deque.com (l'istanza SaaS condivisa di Deque negli USA). Vedi Riferimento alla configurazione per i dettagli.
npm
La distribuzione npm funziona su Node.js. Usa un release LTS attiva di Node.js — le versioni precedenti potrebbero non essere supportate.
La distribuzione npm necessita di un browser Chromium — installane uno tramite Playwright o punta a un binario esistente. Vedi Scegliere una distribuzione.
API key
Crea un file .vscode/mcp.json nel tuo spazio di lavoro (a livello di progetto) o aggiungi il server alla tua configurazione utente:
{
"servers": {
"axe-mcp-server": {
"command": "npx",
"args": ["-y", "axe-mcp-server"],
"env": {
"AXE_API_KEY": "your-api-key-here"
}
}
}
}La tua configurazione contiene una credenziale nel suo blocco env. I file a livello di progetto come .vscode/mcp.json si trovano nel tuo repository — aggiungili a .gitignore, oppure conserva le credenziali nella tua configurazione utente. Vedi Gestione sicura dei segreti sotto.
OAuth 2.0
OAuth 2.0 è supportato anche con la distribuzione npm. Avvolgi il server in @deque/axe-auth run esattamente come sopra — non c'è alcun contenitore in cui pubblicare una porta, quindi il comando è più breve:
{
"servers": {
"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 avvia il server e lo supervisiona per tutta la durata della sessione, fornendo un token di accesso appena generato al processo in esecuzione prima che quello corrente scada. Qui non è necessaria una pubblicazione della porta: il processo incapsulato eredita AXE_TOKEN_REFRESH_PORT direttamente e il listener rimane sul loopback. 9223 è un esempio — qualsiasi porta libera sulla tua macchina funziona, e la variabile è opzionale qui: omettila e run sceglierà una porta libera per la sessione.
A differenza di un container, la distribuzione npm eredita l'intero ambiente della tua shell. Se AXE_API_KEY è esportato lì, arriva al server insieme al token OAuth e il server si rifiuta di avviarsi. Annullalo nella shell da cui avvii il tuo editor, oppure usa la configurazione Docker sopra descritta, che riceve solo le variabili passate con i flag -e espliciti.
Consulta Autenticazione per il flusso completo.
Imposta o AXE_API_KEY o AXE_ACCESS_TOKEN — non entrambi. Il server fallirà all'avvio se entrambe le variabili sono impostate.
Gestione sicura dei segreti
Se includi una credenziale nel blocco env, tratta quel file come qualsiasi altro segreto:
- Non commetterlo mai nel controllo del codice sorgente. I file a livello di progetto come
.vscode/mcp.jsonsi trovano nel tuo repository — aggiungili al tuo.gitignore, oppure conserva le credenziali nella tua configurazione utente. - Preferisci il portachiavi del tuo sistema operativo o un gestore di segreti dove supportato. Per OAuth,
@deque/axe-authgià memorizza i token nel portachiavi di sistema — vedi Autenticazione. - Limita i permessi del file affinché solo il tuo utente possa leggere il file (ad esempio,
chmod 600 .vscode/mcp.jsonsu macOS e Linux).
Avvia il server MCP
- Apri VS Code con le tue impostazioni configurate
- Individua la voce
"axe-mcp-server"nel tuo filemcp.json - Clicca sul pulsante **Avvia** che appare sopra la configurazione del server
- Se hai configurato l'autenticazione tramite chiave API, inserisci la tua chiave API quando richiesto. Se hai configurato OAuth, il server si avvia senza richieste e recupera un token dal tuo portachiavi di sistema.
Invia Comandi a Copilot
Una volta che il server axe MCP è in esecuzione, puoi usarlo tramite l'interfaccia di chat di Copilot in VS Code:
- Apri la chat di Copilot in VS Code
- Assicurati di essere in modalità agente per consentire l'uso degli strumenti
- Invia comandi per analizzare i siti web e risolvere problemi di accessibilità
Per le istruzioni personalizzate raccomandate che guidano Copilot attraverso il flusso di lavoro di analisi e rimedio, vedi Configurare il tuo agente AI.
