Skip to content

MCP propio, privacidad y Copilot Memory

MCP Workspace Configurator

MCP propio que configura el workspace de cualquier dev al instante

Despliegue VPS

Node.js + PM2 en el servidor del equipo

Patrones de fallo

Por qué fallan las IA en equipos y cómo evitarlo

Privacidad

Qué proteger y qué no con Copilot Business


El MCP construido durante el programa. Su función: cualquier dev ejecuta una instrucción y su workspace queda configurado con las instrucciones, agentes, skills y prompts correctos, siempre en la última versión.

Arquitectura:

┌─────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ VS Code │──MCP──▶│ MCP Server │──git──▶│ Repo Config │
│ del dev │ │ (VPS equipo) │ │ (GitLab) │
└─────────────┘ └──────────────────┘ └─────────────────┘

El MCP tira de un repo Git nuevo y privado del equipo como fuente de verdad. Cualquier dev puede editarlo para actualizar la configuración de todos.

Qué contiene el repo de configuración:

  • Directorycopilot-config/
    • Directoryinstructions/
      • copilot-instructions.md
      • angular.instructions.md
      • laravel.instructions.md
    • Directoryagents/
      • planner.agent.md
      • coder.agent.md
      • reviewer.agent.md
    • Directoryprompts/
      • componente-signals.prompt.md
      • controller-rest.prompt.md
      • revisar-mr.prompt.md
    • Directoryskills/
      • Directorytesting/
        • SKILL.md
    • Directoryhooks/
      • format-on-edit.json
      • block-dangerous-ops.json

Tools del MCP:

ToolQué hace
configure_workspaceCopia toda la configuración al workspace actual
update_configActualiza solo los ficheros que han cambiado
check_configVerifica que el workspace tiene la configuración correcta
list_versionsMuestra el historial de cambios de configuración

El dev lo usa así en el chat:

Configura mi workspace con la última versión de las instrucciones del equipo

El MCP descarga la configuración del repo, la copia a .github/, y el agente confirma qué se ha actualizado.

El MCP se despliega como un servicio en el VPS que ya tiene el equipo.

Stack mínimo: Node.js (runtime), Git (para clonar el repo), PM2 o systemd (proceso activo).

  1. Clonar el repo y construir el servidor

    Terminal window
    git clone git@gitlab.empresa.com:equipo/copilot-config.git
    cd mcp-workspace-configurator
    npm install && npm run build
  2. Registrar como servicio con PM2

    Terminal window
    pm2 start dist/server.js --name mcp-configurator
    pm2 save
  3. Configurar en VS Code de cada dev

    {
    "servers": {
    "workspace-configurator": {
    "type": "sse",
    "url": "https://mcp.empresa.com/sse",
    "headers": {
    "Authorization": "Bearer ${env:MCP_TOKEN}"
    }
    }
    }
    }

No es un problema de herramienta. Los patrones de fallo reales:

Si solo el dev más técnico adopta la herramienta, el equipo no cambia. La adopción requiere que todos, incluidos los juniors, la usen en su día a día. Los juniors a menudo obtienen más beneficio porque el agente les enseña patrones que no conocían.

Cómo crear hábitos reales:

  • Empezar con tareas donde el agente da resultados inmediatos (generación de tests, refactors acotados)
  • Hacer pair programming con el agente en las dailies/weeklies
  • Compartir las historias de éxito Y fracaso — los fracasos enseñan más
  • Iterar las instrucciones como parte del sprint, no como proyecto aparte

Privacidad y código sensible con Copilot Business

Section titled “Privacidad y código sensible con Copilot Business”

Con licencia Business, GitHub no entrena con el código del equipo. El código se envía al modelo para completar la respuesta y se descarta. Pero hay cosas que proteger igualmente:

Cómo configurar exclusiones:

En .gitignore o .copilotignore:

.env
.env.*
config/secrets.php
storage/app/private/

Qué registra GitHub y qué no:

  • Registra: metadatos de uso (cuántas peticiones, qué modelo, tiempos de respuesta)
  • No registra: el contenido del código, los prompts ni las respuestas
  • No entrena: con código de licencias Business/Enterprise

Recomendación para el equipo:

  • Variables de entorno en .env (ya lo hacen), no hardcodeadas
  • Datos de prueba con factories, nunca datos reales de producción
  • El copilot-instructions.md puede incluir la instrucción: “No generes ni muestres credenciales, tokens ni datos personales reales”

  1. Crear el repo copilot-config en GitLab con toda la configuración del equipo (instructions/, agents/, prompts/, skills/, hooks/)

  2. Completar el scaffold del MCP server — la tool configure_workspace debe funcionar end-to-end

  3. Implementar check_config y update_config

  4. Preparar el despliegue en el VPS: Dockerfile o script de deploy con PM2

  5. Crear el .copilotignore con las exclusiones correctas para el proyecto

  6. Añadir al copilot-instructions.md: “No generes ni muestres credenciales, tokens ni datos personales reales”

  7. Documentar las decisiones de privacidad del equipo en un PRIVACY.md en el repo

  8. Probar con otro dev del equipo: ¿puede configurar su workspace ejecutando el MCP?

  9. Preparar para la sesión 8: recopilar tiempo de merge de los últimos 10 MRs y cobertura de tests actual