Inicio / Artículos / Conecta repos privados de GitHub a Claude Desktop con un token y Docker

Conecta repos privados de GitHub a Claude Desktop con un token y Docker

Crea un token clásico de GitHub con permisos seguros, añade el servidor MCP de GitHub a Claude Desktop mediante Docker, pruébalo y úsalo para revisar PR, clasificar issues y generar changelogs.

1239 palabras

Con la conexión adecuada, Claude puede trabajar directamente con tus repos de GitHub: listar ramas, revisar pull requests, leer el historial de commits. Ya no hace falta pegar código en el chat. A continuación verás cómo conectar repos privados y varias formas de aprovechar la conexión desde el primer momento.

Qué hace el conector de GitHub

Piensa en el conector como un puente entre tu cuenta de GitHub y Claude. Una vez activo, Claude puede lanzar operaciones reales de GitHub, como listar repos, leer archivos, revisar ramas, abrir pull requests y publicar comentarios de revisión. Tu contraseña de GitHub nunca llega a Claude. Solo se usa un token que creas tú, y tú decides qué puede ver ese token.

Crear el token

La configuración se basa en un Personal Access Token (Classic). Se probaron los dos tipos de token: los de grano fino (fine-grained) bloquean la API de búsqueda de GitHub y los clásicos no, así que el clásico es la opción segura si quieres acceso completo.

  1. Abre github.com e inicia sesión.
  2. Haz clic en tu foto de perfil arriba a la derecha, elige Settings, baja hasta el final del menú izquierdo y haz clic en Developer settings. Hay un atajo que se salta este paso y el siguiente: ve directamente a https://github.com/settings/tokens, que abre la página de tokens clásicos.
  3. En el menú izquierdo, haz clic en Personal access tokens y luego en Tokens (classic). No elijas aquí «Fine-grained tokens». Si usaste el atajo, ya estás en esta página.
  4. Pulsa Generate new token y elige la variante clásica. Puede que GitHub te pida la contraseña o un código de 2FA.
  5. Rellena el campo «Note» con algo reconocible, como claude-mcp-access, para recordar más adelante para qué existe el token.
  6. Elige una caducidad de 30, 60 o 90 días. Evita «No expiration» salvo que tengas un buen motivo, porque una vida corta limita el daño si el token se filtra.
  7. Selecciona los permisos (scopes) con cuidado, porque es el paso que más importa.
  8. Baja, haz clic en Generate token y cópialo.

Sobre los permisos: definen lo que Claude puede hacer con tus repos. No marques todas las casillas, solo lo que necesita la tarea, y lee la lista antes de hacer clic en nada. Nunca actives delete_repo. Permite borrar un repositorio, un solo comando equivocado podría eliminar un proyecto entero y un asistente de IA casi nunca tiene un buen motivo para tenerlo. Como regla general, empieza con el permiso más reducido que permita hacer el trabajo. Si más adelante una tarea necesita más, siempre puedes crear un token nuevo con un acceso más amplio.

En el último paso, GitHub muestra el token una sola vez en la pantalla siguiente. Cópialo de inmediato y guárdalo en un gestor de contraseñas, porque en cuanto salgas de la página no podrás volver a verlo.

Conectar el token a Claude Desktop

Esta parte conecta GitHub con Claude Desktop a través de Docker. Sigue los pasos en orden y no te saltes ninguno.

  1. Instala Docker Desktop desde docker.com si no lo tienes, igual que cualquier otra aplicación.
  2. Abre Docker Desktop y espera a ver «Docker is running», que suele aparecer como un icono verde en la barra de menús. Es obligatorio, porque Claude no puede llegar a GitHub si Docker no está en marcha. Olvidarlo es el error más común, así que compruébalo primero si más adelante la conexión falla.
  3. Cierra Claude Desktop por completo antes de tocar la configuración. En un Mac, usa el icono de Claude en el Dock: haz clic derecho y elige Quit. Cerrar solo la ventana deja la aplicación funcionando.
  4. Localiza el archivo de configuración. Claude Desktop lee sus ajustes de claude_desktop_config.json, que en macOS está en ~/Library/Application Support/Claude/claude_desktop_config.json. Para abrir esa carpeta oculta, ve a Finder, luego Go y Go to Folder, y pega la ruta.
  5. Abre el archivo en un editor de texto plano, como TextEdit o VS Code, con clic derecho y Open With. Evita Word o cualquier programa que añada formato. Si el archivo no existe, crea uno vacío exactamente con ese nombre y exactamente en esa carpeta.
  6. Añade el bloque del servidor MCP de GitHub en la raíz del JSON. Si el archivo está vacío, pégalo entero. Si ya tiene contenido, combina la clave mcpServers con cuidado, porque dos claves mcpServers en un mismo archivo lo rompen.
{
  "mcpServers": {
    "github": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN=your_pat_here",
        "ghcr.io/github/github-mcp-server"
      ]
    }
  }
}
  1. Busca your_pat_here en ese bloque y sustitúyelo por el token clásico del paso 8. Deja las comillas en su sitio y no añadas espacios.
  2. Guarda el archivo con el mismo nombre, en el mismo lugar y con la misma extensión.
  3. Vuelve a comprobar el icono de Docker. Docker tiene que estar en marcha antes de abrir Claude.
  4. Abre Claude Desktop. Lee la nueva configuración al arrancar, y el primer inicio puede tardar unos segundos más mientras Docker descarga la imagen del servidor MCP de GitHub.
  5. Pruébalo. Si no pasa nada, haz tres comprobaciones en este orden: Docker Desktop está en marcha, el JSON no tiene erratas (la culpable más frecuente es una coma que falta) y el token se pegó sin espacios de más.

Cosas que probar

  • Revisión de pull requests. Pide a Claude que mire un PR abierto. Lee el diff, señala bugs, nombres poco claros y tests que faltan, y puede dejar comentarios en el propio GitHub para que el equipo vea el feedback en un solo sitio.
  • Auditoría de ramas. En los equipos grandes se acumulan ramas viejas. Pide a Claude que liste todas las ramas de tus repos y señale las abandonadas que se pueden borrar sin riesgo.
  • Automatización del flujo de trabajo. Claude puede crear una rama, subir un pequeño arreglo y abrir un pull request, con lo que una tarea manual de cinco pasos se reduce a una frase.
  • Clasificación de issues. Puede leer los issues abiertos, ordenarlos por prioridad y proponer etiquetas, algo útil en repos con mucho backlog.
  • Notas de versión. Indícale los commits recientes y los PR fusionados, y redactará un changelog ordenado para la próxima versión.
  • Búsqueda entre repos. En una arquitectura con muchos microservicios, Claude puede buscar en todos los repos a la vez y encontrar cada lugar donde aparece una función o un valor de configuración, esté en el proyecto que esté.

Lista de seguridad

  • Ajusta los permisos al propósito y nunca actives delete_repo.
  • Da al token solo los permisos que necesita.
  • Ponle fecha de caducidad y renueva los tokens con regularidad.
  • No pongas tokens en chats públicos, archivos de repositorios públicos ni documentos compartidos.
  • Deja claude_desktop_config.json fuera del control de versiones, porque el token está ahí en texto plano.
  • Si hay posibilidad de filtración, revoca el token de inmediato.
  • Mantén Docker Desktop actualizado, porque las versiones antiguas pueden tener fallos de seguridad.

Con esto, tus repos privados quedan conectados y Claude puede leerlos, trabajar en ellos y ayudar al equipo a publicar más rápido sin que salgas del chat.