Skip to main content

Configuración de una lista de permitidos de un servidor MCP para su empresa

Defina los servidores MCP que los usuarios pueden y no puedan usar sin necesidad de un registro privado.

¿Quién puede utilizar esta característica?

Enterprise owners

Copilot Enterprise or Copilot Business

Acerca de las listas de permitidos

Puede definir una lista de permitidos y una lista de denegación para controlar qué usuarios de servidores MCP de su empresa pueden ejecutarse en Copilot clientes. Estas listas se definen en la empresa managed-settings.json, que puede almacenar en GitHub.

Para obtener más información, vea Uso del servidor MCP en su empresa.

Requisitos previos

  • Para que los servidores MCP se ejecuten, los servidores MCP de la Copilot directiva deben estar habilitados para su empresa o para organizaciones en las que se deben permitir los servidores MCP.
  • Si actualmente restringe los servidores MCP a un registro personalizado, se recomienda desactivar esta restricción para evitar conflictos con la nueva lista de permitidos y mantener una única fuente de verdad. Establezca la directiva Restringir el acceso de MCP a los servidores del Registro en Permitir todo y, opcionalmente, borre el valor de dirección URL del Registro de MCP.

Puede encontrar esta configuración en la sección MCP de las Copilot directivas. Consulte Administración de directivas y características para GitHub Copilot en su empresa.

Definición de una lista de permitidos o una lista de denegación

  1. Cree un managed-settings.json archivo para su empresa. La mayoría de las empresas almacenan este archivo en un .github-private repositorio. También puede instalarlo directamente en las máquinas de los usuarios mediante la administración de dispositivos móviles. Consulte Configuración de opciones administradas por la empresa.

  2. Edite el archivo para definir una lista de permitidos y una lista de denegación para los servidores MCP. Puede coincidir por nombre, dirección URL del servidor o comandos específicos. Para más información sobre la sintaxis, consulte allowedMcpServers y deniedMcpServers en "Referencia de configuración administrada de empresa".

    En el ejemplo siguiente se permiten servidores que coincidan con cualquiera de las tres entradas de la lista de permitidos. El servidor del sistema de archivos configurado para acceder al sistema de archivos raíz siempre está bloqueado, aunque también coincida con una entrada de lista de permitidos.

    JSON
    {
      "allowedMcpServers": [
        { "serverUrl": "https://api.githubcopilot.com/*" },
        { "serverCommand": ["npx", "@playwright/mcp@latest"] },
        { "serverCommand": ["cmd", "/c", "uvx", "markitdown-mcp"] }
      ],
      "deniedMcpServers": [
        {
          "serverCommand": [
            "npx",
            "-y",
            "@modelcontextprotocol/server-filesystem",
            "/"
          ]
        }
      ]
    }
    

Reglas de evaluación

Copilot los clientes evalúan los servidores MCP en este orden:

  1. Permitir siempre servidores predeterminados integrados, como el servidor MCP integrado GitHub .
  2. Bloquee el servidor si coincide con cualquier entrada en deniedMcpServers.
  3. Si allowedMcpServers está presente, bloquee el servidor si no coincide con una entrada.
  4. Bloquee el servidor si su dirección URL o comando contiene una variable sin resolver, como ${VARIABLE} o $VARIABLE, porque el cliente no puede comprobar el servidor.

Si un cliente recibe la configuración de varios managed-settings.json métodos de implementación, se aplicará toda la configuración. Una regla de denegación de los bloques de origen del servidor y un servidor debe coincidir con una entrada de lista de permitidos en cada capa que defina una.

Si una lista de permitidos o una lista de denegación tiene un formato incorrecto (por ejemplo, tiene JSON no válido), el cliente trata la directiva como una lista vacía allowedMcpServers . Esto bloquea todos los servidores excepto los servidores predeterminados integrados.

Si el cliente no puede determinar una capa de directiva debido a un error de recuperación o detección de dispositivos, conserva la directiva aplicada anteriormente. La directiva efectiva puede ser más restrictiva, pero no menos restrictiva.