Servidores, registros y listas de autorizaciones del Protocolo de Contexto de Modelo (MCP)

Completado

Los agentes se vuelven más útiles cuando pueden ir más allá del repositorio e interactuar con otras herramientas, sistemas y servicios. Model Context Protocol (Protocolo de contexto de modelo) o MCP permite a los agentes una manera coherente de detectar y usar funcionalidades externas.

En los entornos de GitHub, MCP no se trata solo de conectarse a herramientas. También se trata de controlar cómo se introducen, configuran y rigen esas herramientas. Esto incluye la configuración de servidores MCP, el uso de un registro para detectar servidores disponibles y la aplicación de listas de permitidos para que solo se puedan usar servidores aprobados.

En esta unidad, aprenderá lo siguiente:

  • Qué es MCP
  • Funcionamiento de los servidores MCP
  • Cómo los registros facilitan la detección de servidores
  • Cómo controlan las listas de autorización qué servidores se pueden usar
  • Cómo encaja MCP en flujos de trabajo y herramientas de agente en GitHub

¿Qué es MCP?

El protocolo de contexto de modelo es una manera estándar de que los clientes de IA se conecten a herramientas y servicios a través de servidores MCP. En lugar de crear una integración única para cada herramienta, un cliente compatible con MCP puede conectarse a un servidor que expone herramientas en un formato estructurado.

Esto proporciona a los agentes un modelo coherente para:

  • Detección de herramientas disponibles
  • Envío de solicitudes estructuradas
  • Recepción de resultados estructurados
  • Reutilización del mismo patrón de interacción en distintos sistemas

¿Qué es un servidor MCP?

Un servidor MCP es el componente que expone herramientas a un cliente de IA.

El servidor se encuentra entre el cliente y el sistema subyacente. Presenta las herramientas disponibles en un formato que el cliente entiende, acepta solicitudes y, a continuación, realiza la acción real en el servicio conectado.

En función de la configuración, un servidor MCP puede:

  • Ejecución local en un equipo para desarrolladores
  • Ejecutar remotamente como un servicio alojado
  • Conexión a recursos locales
  • Puente a plataformas y API remotas

El GitHub servidor MCP es un ejemplo. Conecta los clientes de IA a funcionalidades de GitHub, como repositorios, incidencias y solicitudes de extracción.

Servidores MCP locales y remotos

Los servidores MCP se pueden configurar local o remotamente.

Un servidor MCP local se ejecuta en el equipo. Esto resulta útil cuando desea un control más estricto sobre la configuración, el acceso a los recursos locales o una configuración personalizada.

Un servidor MCP remoto se hospeda en otro lugar y se accede a él a través de la red. Esto reduce el trabajo de configuración y facilita el uso del mismo servidor entre entornos.

En los IDE admitidos, el GitHub servidor MCP se puede configurar de forma remota o local, con la opción remota colocada como la configuración recomendada para la mayoría de los usuarios. GitHub Enterprise Server admite la configuración del servidor MCP local, mientras que GitHub Enterprise Cloud con residencia de datos admite opciones locales y remotas.

Agregar un servidor MCP remoto como una herramienta a un agente (VS Code)

Los servidores MCP se agregan directamente a través de la interfaz Copilot Chat y se convierten en herramientas que el agente puede usar.

Steps:

  1. Haga clic en el icono de GitHub Copilot en la parte superior del editor.
  2. Abra Copilot Chat y cambie al modo agente.
  3. Haga clic en el icono Herramientas en el panel de chat.
  4. Haga clic en Configurar herramientas en la esquina superior derecha del panel Copilot Chat.
  5. Haga clic en Agregar servidor MCP.
  6. En el cuadro de diálogo de instalación:
    1. Seleccione HTTP como tipo de servidor.
    2. Escriba la dirección URL del servidor (por ejemplo, GitHub servidor MCP):
    3. https://api.githubcopilot.com/mcp/
    4. Presione la tecla Enter.
    5. Se genera automáticamente un nombre de servidor.
    6. Elija el ámbito; área de trabajo actual o todas las áreas de trabajo
    7. Haga clic en Autenticar e iniciar sesión en GitHub
    8. Guarda la configuración

El servidor MCP ahora está disponible como una herramienta dentro del agente y el agente puede llamar a sus funcionalidades durante las tareas.

Agregar un servidor MCP local como una herramienta a un agente

Un servidor MCP local se ejecuta en el equipo y permite al agente interactuar con herramientas locales, archivos o servicios personalizados. El proceso de instalación en VS Code es el mismo que agregar cualquier servidor MCP.

La única diferencia es el servidor al que se conecta. En lugar de usar una dirección URL hospedada como el servidor MCP de GitHub, proporcione un punto de conexión local, por ejemplo:

http://localhost:3000

Servidores MCP locales:

  • Ejecuta en tu equipo
  • Puede acceder a recursos locales y flujos de trabajo personalizados
  • Normalmente, no requiere autenticación externa

¿Qué es un registro MCP?

Un registro MCP es un catálogo de servidores MCP.

En lugar de pedir a todos los desarrolladores que configuren manualmente cada servidor, un registro proporciona un lugar central donde los clientes compatibles pueden detectar qué servidores están disponibles y cómo usarlos.

Esto simplifica la configuración de dos maneras:

  • Facilita la detección de servidores.
  • Normaliza cómo se describen y distribuyen los servidores.

De forma predeterminada, las experiencias del IDE compatibles pueden usar el registro de MCP de GitHub, y los desarrolladores también pueden cambiar a un registro personalizado cuando sea necesario.

Cómo ayudan los registros con la configuración

Los registros reducen la fricción porque eliminan gran parte del trabajo manual implicado en la adición de servidores.

En lugar de editar los archivos de configuración manualmente para cada servidor, un desarrollador puede examinar o buscar un registro, seleccionar un servidor, instalarlo y confiar en él para su uso en su entorno.

Esto hace que los registros resulten especialmente útiles cuando:

  • Teams quiere una experiencia de configuración más sencilla
  • Las organizaciones quieren un conjunto estándar de servidores aprobados
  • Los desarrolladores necesitan una lista seleccionada en lugar de una detección no administrada

GitHub también admite registros de MCP personalizados para organizaciones y empresas, siempre y cuando el registro siga la especificación del registro de MCP necesaria y la estructura del punto de conexión.

Configuración de registros de MCP

Para usar un registro MCP personalizado en GitHub, una organización o empresa debe crear o hospedar un registro al que GitHub Copilot pueda acceder.

Steps:

  1. Cree o hospede un registro MCP. Puede hacerlo de una de estas tres maneras:
    • Bifurca y hospeda por ti mismo el registro MCP de código abierto
    • Ejecución local del registro de código abierto mediante Docker
    • Compilación y publicación de su propia implementación de registro personalizada
  2. Asegúrese de que el registro cumple los requisitos de GitHub. El registro debe:
    • Siga la especificación del registro mcP v0.1.
    • Exponga los puntos de conexión HTTPS necesarios:
      • GET /v0.1/servers
      • GET /v0.1/servers/{serverName}/versions/latest
      • GET /v0.1/servers/{serverName}/versions/{version}
    • Incluya los encabezados CORS necesarios para que Copilot pueda acceder a ellos:
      • Access-Control-Allow-Origin: *
      • Access-Control-Allow-Methods: GET, OPTIONS
      • Access-Control-Allow-Headers: Authorization, Content-Type
  3. (Opcional) Incluya servidores MCP locales:
    • Si desea que los desarrolladores usen servidores MCP locales en directivas restringidas, esos servidores deben aparecer en el Registro.
    • Los identificadores de servidor deben coincidir exactamente
  4. (Alternativa) Uso del Centro de API de Azure
    • Azure API Center puede actuar como un registro MCP administrado
    • Habilitación del acceso anónimo para que Copilot pueda capturar el registro
    • Copia de la dirección URL del punto de conexión del Centro de API para su uso posterior
  5. Proporcione la dirección URL del Registro a su organización o empresa.
    • Esta dirección URL se usará en la configuración de directivas de Copilot.
    • Hace que el registro esté disponible en toda la empresa.

Una vez configurado, el registro se convierte en el origen de la verdad para los servidores MCP disponibles, lo que permite a los desarrolladores detectar y usar herramientas aprobadas de forma coherente.

¿Qué es una lista de permitidos?

Una lista de permitidos es una directiva que controla qué servidores MCP se permiten.

Esto es importante porque MCP expande lo que un agente puede tener acceso. Sin límites de protección, un agente podría estar conectado a herramientas que exponen sistemas confidenciales o permiten acciones no seguras.

Una lista de permitidos resuelve esto al restringir el uso del servidor a entradas aprobadas. En la práctica, esto significa que una organización o una empresa pueden decidir si los desarrolladores pueden:

  • Usar servidores MCP sin excepción
  • Usar cualquier servidor MCP
  • Usar solo servidores MCP específicos definidos en un registro

GitHub admite el cumplimiento de la lista de permitidos de MCP en el nivel de organización y de empresa, vinculado al puesto de Copilot que rige al usuario.

Funcionamiento en conjunto de servidores, registros y listas de acceso permitido de MCP

Estos tres conceptos resuelven diferentes partes del mismo problema:

  • El servidor MCP expone herramientas
  • El Registro hace que los servidores sean detectables y confiables
  • Lista de permitidos decide qué servidores están permitidos

Juntos, crean un modelo que es flexible y controlado.

Un desarrollador o equipo puede detectar servidores útiles a través de un registro, mientras que la organización conserva la gobernanza sobre qué servidores se permiten en la práctica.

Configuración de listas de permitidos de MCP

Las listas de autorización de MCP controlan qué servidores MCP están permitidos para que los desarrolladores los usen. Esto se configura en el nivel de organización o de empresa en GitHub.

Pasos (Empresarial):

  1. Vaya a su empresa en GitHub
  2. En la parte superior de la página, haga clic en Controles de IA.
  3. En la barra lateral, haga clic en MCP.
  4. Asegúrese de que los servidores MCP de Copilot estén establecidos en Habilitado en todas partes.
  5. En la sección Dirección URL del Registro de MCP:
    • Escriba la dirección URL del registro.
    • Haga clic en Guardar.
    • Si usa Azure centro de API, escriba solo la dirección URL base (no incluya /v0.1/servers).
  6. En Restringir el acceso MCP a los servidores del Registro, elija:
    • Permitir todo → ninguna restricción, se puede usar cualquier servidor MCP.
    • Solo el Registro → solo se permiten servidores del Registro

Pasos (organización):

  1. En GitHub, haga clic en la imagen de perfil y seleccione Organizaciones.
  2. Selección de la organización
  3. Haga clic en Configuración.
  4. En la barra lateral, haga clic en Copilot y, a continuación, en Directivas.
  5. En la sección Características:
    • Asegúrese de que los servidores MCP de Copilot estén habilitados
  6. (Opcional) En la dirección URL del Registro de MCP:
    • Escriba la dirección URL del Registro.
    • Haga clic en Guardar.
    • Si usa Azure CENTRO de API, escriba solo la dirección URL base.
  7. En Restringir el acceso MCP a los servidores del Registro, elija:
    • Permitir todo
    • Solo registro

Nota:

Notas: Si se selecciona la opción Permitir todo, los desarrolladores pueden agregar y usar cualquier servidor MCP sin restricciones. Si solo se selecciona Registro, los desarrolladores se limitan a usar solo los servidores MCP definidos en el registro configurado. En este caso, incluso los servidores MCP locales deben incluirse en el registro y sus identificadores de servidor deben coincidir exactamente. Una vez seleccionada una directiva, se aplica inmediatamente a todos los desarrolladores.

Las listas permitidas garantizan que los agentes solo usan servidores MCP aprobados, lo que proporciona a las organizaciones control sobre qué herramientas se puede acceder.

Un flujo de trabajo práctico GitHub

Un flujo MCP centrado en GitHub realista tiene este aspecto:

  1. Una organización configura un registro de MCP
  2. La organización define una política de lista de autorizados para los servidores aprobados.
  3. Un desarrollador abre un IDE compatible con MCP o un cliente
  4. El cliente detecta los servidores aprobados del Registro.
  5. El desarrollador habilita un servidor como el servidor mcp de GitHub
  6. El agente usa herramientas de ese servidor durante una tarea.

En este modelo, los agentes obtienen nuevas funcionalidades sin renunciar al control sobre la seguridad y la gobernanza.

Por qué esto es importante para la ejecución del agente

MCP proporciona a los agentes acceso a más herramientas, pero más herramientas también significan más responsabilidad.

Para usar MCP de forma segura a escala, necesita más que conectividad. Necesitas:

  • Un servidor que expone las herramientas correctamente
  • Registro que hace que los servidores aprobados se puedan detectar
  • Lista de permitidos que limita lo que se puede usar

Esa combinación hace que MCP sea práctico para equipos reales. Permite que los agentes se expandan más allá de GitHub a la vez que se mantiene controlada la configuración y el acceso.

Conclusión principal

MCP amplía las funcionalidades del agente mediante la conexión a herramientas a través de servidores MCP. Los registros simplifican cómo se detectan y configuran esos servidores. Las listas de permitidos proporcionan los límites de protección que deciden qué servidores están permitidos.

Juntos, estas piezas hacen que MCP sea escalable y controlable.

A continuación, aprenderá a definir entornos de ejecución y límites de permisos para que los agentes puedan usar GitHub y herramientas conectadas a MCP de forma segura.