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
-
Cree un
managed-settings.jsonarchivo para su empresa. La mayoría de las empresas almacenan este archivo en un.github-privaterepositorio. 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. -
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", "/" ] } ] }{ "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:
- Permitir siempre servidores predeterminados integrados, como el servidor MCP integrado GitHub .
- Bloquee el servidor si coincide con cualquier entrada en
deniedMcpServers. - Si
allowedMcpServersestá presente, bloquee el servidor si no coincide con una entrada. - 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.