Configuración en VS Code con Copilot

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard
Not for use with personal data

Antes de configurar, elige una distribución (Docker o npm) y configura la autenticación (clave API o OAuth 2.0). Luego agrega la configuración correspondiente a continuación.

La configuración se puede usar en el nivel de proyecto o en el nivel de configuración del usuario (en todos los proyectos). Para la configuración a nivel de proyecto, crea un archivo .vscode/mcp.json en tu espacio de trabajo. Para una configuración a nivel de usuario, agrega un servidor MCP a tu archivo de configuración del usuario existente. Para más información, consulta el documentación de VS Code MCP.

Docker

Clave API

{
  "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 configuración utiliza "AXE_API_KEY": "${input:axe-api-key}" para el manejo seguro de entradas. Esto te solicitará tu clave API cuando el servidor se inicie por primera vez.

note

¿Usando una instancia regional, en una nube privada o local de axe? Añade AXE_SERVER_URL al bloque env con la URL base de tu instancia:

"env": {
  "AXE_API_KEY": "${input:axe-api-key}",
  "AXE_SERVER_URL": "https://your-axe-instance.example.com"
}

Si se omite, el servidor predetermina a https://axe.deque.com (la instancia SaaS compartida de Deque en EE.UU.). Consulta Referencia de configuración para más detalles.

OAuth 2.0

Antes de configurar, complete Paso 1: Autenticar en la guía de Autenticación.

Inicie el servidor a través de @deque/axe-auth run, lo que mantiene fresco el token de acceso del servidor en funcionamiento mientras dure la sesión. No se necesita ningún bloque de inputs: las credenciales se recuperan automáticamente de su llavero del 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"
      }
    }
  }
}
note

El refresco del token alcanzó el servidor axe MCP en v1.5.0. npx -y @deque/axe-auth siempre obtiene el CLI actual, pero una imagen de Docker extraída antes de esa versión no tiene un oyente de refresco para que run pueda enviar — extraerla de nuevo con docker pull dequesystems/axe-mcp-server:latest.

npx -y @deque/axe-auth run lanza el contenedor y lo supervisa durante la duración de la sesión, enviando un token de acceso recién creado al servidor en ejecución antes de que el actual expire. Tu token de actualización nunca sale de tu máquina — solo los tokens de acceso de corta duración llegan al servidor. La bandera -y omite el aviso de "¿Está bien continuar?" que npx normalmente solicitaría en un shell no interactivo.

Las banderas restantes existen para hacer que ese envío sea accesible dentro del contenedor:

  • -p 127.0.0.1:9223:9223 publica el oyente de actualización del servidor solo en el loopback del host, manteniéndolo fuera de las interfaces externas de tu máquina.
  • -e AXE_ACCESS_TOKEN, -e AXE_TOKEN_REFRESH_PORT y -e AXE_TOKEN_REFRESH_SECRET reenvían los valores que run genera dentro del contenedor. Pasa solo los nombres, sin =valuerun los proporciona.
  • -e AXE_TOKEN_REFRESH_HOST=0.0.0.0 enlaza el oyente a la interfaz de red del contenedor. Un puerto publicado se reenvía allí en lugar del loopback del contenedor, por lo que el enlace loopback por defecto sería inaccesible. El secreto compartido, no el aislamiento del contenedor, es lo que protege el punto final.

9223 es un ejemplo — cualquier puerto libre en tu máquina funciona, siempre que AXE_TOKEN_REFRESH_PORT y el -p de publicación nombren el mismo. Consulta Variables de actualización de token para la referencia completa.

note

¿Utiliza una instancia de axe en una nube regional, privada o local? Agrega AXE_SERVER_URL al comando Docker y al bloque env, junto con el puerto de actualización:

"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"
}

Utiliza la misma URL que pasaste a --server cuando iniciaste sesión, para que los tokens que axe-auth emite provengan de la instancia que el servidor llama. Si se omite, el servidor utiliza por defecto https://axe.deque.com (la instancia compartida SaaS de Deque en EE.UU.). Consulta Referencia de Configuración para más detalles.

npm

La distribución de npm se ejecuta en Node.js. Use un versión activa LTS de Node.js — es posible que las versiones anteriores no sean compatibles.

La distribución npm necesita un navegador Chromium: puedes instalar uno a través de Playwright o apuntar a un binario existente. Consulta Eligiendo una Distribución.

Clave API

Crea un archivo .vscode/mcp.json en tu espacio de trabajo (a nivel de proyecto) o agrega el servidor a tu configuración de usuario:

{
  "servers": {
    "axe-mcp-server": {
      "command": "npx",
      "args": ["-y", "axe-mcp-server"],
      "env": {
        "AXE_API_KEY": "your-api-key-here"
      }
    }
  }
}
caution

Tu configuración contiene una credencial en su bloque env. Los archivos a nivel de proyecto como .vscode/mcp.json residen en tu repositorio: agrégales a .gitignore, o mantén las credenciales en tu configuración de usuario. Consulta Manejo seguro de secretos a continuación.

OAuth 2.0

También se admite OAuth 2.0 con la distribución de npm. Envolva el servidor en @deque/axe-auth run exactamente como arriba: no hay un contenedor para publicar un puerto, por lo que el comando es más corto:

{
  "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 lanza el servidor y lo supervisa durante toda la sesión, proporcionando un token de acceso recién generado al proceso en ejecución antes de que expire el actual. No es necesario publicar ningún puerto aquí: el proceso envuelto hereda AXE_TOKEN_REFRESH_PORT directamente y el receptor se mantiene en el loopback. 9223 es un ejemplo: cualquier puerto libre en tu máquina funciona, y la variable es opcional aquí: omítela y run escogerá un puerto libre para la sesión.

caution

A diferencia de un contenedor, la distribución de npm hereda todo tu entorno de shell. Si AXE_API_KEY se exporta allí, llega al servidor junto con el token de OAuth y el servidor se niega a arrancar. Desactívalo en el shell desde el que lanzas tu editor, o utiliza la configuración de Docker mencionada anteriormente, que solo recibe las variables pasadas con banderas de -e explícitas.

Consulte Autenticación para el flujo completo.

note

Configura ya sea AXE_API_KEY o AXE_ACCESS_TOKEN — no ambos. El servidor fallará al iniciarse si ambas variables están configuradas.

Manejo seguro de secretos

Si incluyes una credencial en el bloque env, trata ese archivo como cualquier otro secreto:

  • Nunca lo lleves al control de versiones. Los archivos a nivel de proyecto como .vscode/mcp.json residen en tu repositorio: agrégales a tu .gitignore, o mantén las credenciales en tu configuración de usuario.
  • Prefiere el llavero de tu sistema operativo o un gestor de secretos donde sea compatible. Para OAuth, @deque/axe-auth ya almacena los tokens en tu llavero del sistema — consulta Autenticación.
  • Restringe los permisos de archivos para que solo tu usuario pueda leer el archivo (por ejemplo, chmod 600 .vscode/mcp.json en macOS y Linux).

Iniciar el Servidor MCP

  1. Abre VS Code con tus configuraciones establecidas
  2. Localiza la entrada "axe-mcp-server" en tu archivo mcp.json
  3. Haz clic en el botón **Inicio** que aparece arriba de la configuración del servidor
  4. Si configuraste la autenticación de clave API, ingresa tu clave API cuando se te solicite. Si configuraste OAuth, el servidor se inicia sin un aviso y recupera un token de tu llavero del sistema.

Enviar indicaciones a Copilot

Una vez que el servidor axe MCP está en funcionamiento, puedes usarlo a través de la interfaz de chat de Copilot en VS Code:

  1. Abre el chat de Copilot en VS Code
  2. Asegúrate de estar en modo agente para permitir el uso de herramientas
  3. Envía indicaciones para analizar sitios web y remediar problemas de accesibilidad

Para instrucciones personalizadas recomendadas que guían a Copilot a través del flujo de trabajo analizar-luego-remediar, consulta Configurando Tu Agente AI.