Configurar MCP de GitHub en Claude Code

Voy a darte las instrucciones paso a paso para añadir el servidor MCP de GitHub.


🔑 PASO 1: Obtener GitHub Personal Access Token

A. Ir a GitHub Settings

  1. Ve a: https://github.com/settings/tokens
  2. O navega: GitHub → Settings (tu perfil) → Developer settings → Personal access tokens → Tokens (classic)

B. Generar Nuevo Token

  1. Click en "Generate new token""Generate new token (classic)"
  2. Note: Claude Code MCP (nombre descriptivo)
  3. Expiration: Elige duración (recomendado: 90 días o sin expiración)

C. Seleccionar Permisos (Scopes)

Marca estos permisos mínimos:

repo (acceso completo a repositorios)

  • ✅ repo:status
  • ✅ repo_deployment
  • ✅ public_repo
  • ✅ repo:invite
  • ✅ security_events

workflow (si quieres gestionar GitHub Actions)

read:org (leer información de organizaciones)

gist (si quieres gestionar gists)

D. Generar y Copiar

  1. Click en "Generate token"
  2. COPIA EL TOKEN INMEDIATAMENTE (empieza con ghp_...)
  3. ⚠️ Solo se muestra una vez

📦 PASO 2: Instalar el Servidor MCP de GitHub

Opción A: Instalación Global (más rápido)

powershell

npm install -g @modelcontextprotocol/server-github

Opción B: Instalación Local en tu Proyecto (recomendado)

powershell

cd C:\Users\nombre_usuario\Desktop\sirkerman

npm install @modelcontextprotocol/server-github


📝 PASO 3: Configurar en .claude.json

Editar el Archivo

Abre: C:\Users\nombre_usuario\.claude.json

powershell

notepad C:\Users\nombre_usuario\.claude.json

Añadir GitHub al Archivo

Actualiza el archivo para que tenga AMBOS servidores (Supabase + GitHub):

json

{

"mcpServers": {

"supabase": {

"command":"cmd",

"args": [

"/c",

"npx",

"-y",

"@supabase/mcp-server-supabase"

],

"env": {

"SUPABASE_ACCESS_TOKEN":"tu_token_supabase"

}

},

"github": {

"command":"cmd",

"args": [

"/c",

"npx",

"-y",

"@modelcontextprotocol/server-github"

],

"env": {

"GITHUB_PERSONAL_ACCESS_TOKEN":"ghp_tu_token_github_aqui"

}}}}

Reemplazaghp_tu_token_github_aqui con tu token real de GitHub.


🔄 PASO 4: Reiniciar VSCode

  1. Cierra VSCode completamente
  2. Abre VSCode de nuevo
  3. Abre tu proyecto

✅ PASO 5: Verificar que Funciona

A. Verificar Servidores

En Claude Code, escribe:

/mcp

Deberías ver:

Manage MCP Servers

* supabase ✓ connected

* github ✓ connected

B. Probar Funcionalidad

Pregunta a Claude Code:

Lista mis repositorios de GitHub

o

Muestra los issues del repositorio


🔐 Seguridad - Usar Variables de Entorno

Crear .env

powershell

notepad .env

Contenido:

GITHUB_PERSONAL_ACCESS_TOKEN=ghp_tu_token

SUPABASE_ACCESS_TOKEN=sbp_tu_token

Actualizar .claude.json

json

{

"mcpServers": {

"supabase": {

"command":"cmd",

"args": ["/c", "npx", "-y", "@supabase/mcp-server-supabase"],

"env": {

"SUPABASE_ACCESS_TOKEN":"${SUPABASE_ACCESS_TOKEN}"

}

},

"github": {

"command":"cmd",

"args": ["/c", "npx", "-y", "@modelcontextprotocol/server-github"],

"env": {

"GITHUB_PERSONAL_ACCESS_TOKEN":"${GITHUB_PERSONAL_ACCESS_TOKEN}"

}

}

}

}

Actualizar .gitignore

node_modules/

.env


📂 Opción: Configuración por Proyecto

Si prefieres configurar GitHub solo para este proyecto, crea .mcp.json:

powershell

cd C:\Users\nombre_usuario\Desktop\proyecto

notepad .mcp.json

Contenido:

json

{

"mcpServers": {

"supabase": {

"command":"cmd",

"args": ["/c", "npx", "-y", "@supabase/mcp-server-supabase"],

"env": {

"SUPABASE_ACCESS_TOKEN":"${SUPABASE_ACCESS_TOKEN}"

}

},

"github": {

"command":"cmd",

"args": ["/c", "npx", "-y", "@modelcontextprotocol/server-github"],

"env": {

"GITHUB_PERSONAL_ACCESS_TOKEN":"${GITHUB_PERSONAL_ACCESS_TOKEN}"

}}}}


🐛 Troubleshooting

Problema: "github failed" en /mcp

Verifica el token:

powershell

$env:GITHUB_PERSONAL_ACCESS_TOKEN="tu_token"

cmd /c npx -y @modelcontextprotocol/server-github

Problema: "403 Forbidden"

El token no tiene los permisos necesarios. Genera uno nuevo con los scopes correctos.

Ver Logs

En VSCode:

  • ViewOutput (Ctrl+Shift+U)
  • Dropdown: "Claude Code"

💡 Ejemplos de Uso

Una vez configurado, puedes pedirle a Claude:

Crea un issue en mi repo "sirkerman" con el título "Bug en login"

Muéstrame los últimos 5 commits del branch main

Crea un nuevo branch llamado "feature/nueva-funcionalidad"

Lista todos los PRs abiertos

Busca en el código la función "handleLogin"


📋 Resumen de Comandos

powershell

# Instalar

npm install @modelcontextprotocol/server-github

# Verificar instalación

npm list @modelcontextprotocol/server-github

# Probar manualmente

$env:GITHUB_PERSONAL_ACCESS_TOKEN="tu_token"

cmd /c npx -y @modelcontextprotocol/server-github


📋 Si quieres poner varios MCP Servers

Editar el Archivo de Configuración

Abre: C:\Users\Javisagan\.claude.json

Añade GitHub manteniendo Supabase:

json

{

"mcpServers": {

"supabase": {

"command":"cmd",

"args": ["/c", "npx", "-y", "@supabase/mcp-server-supabase"],

"env": {

"SUPABASE_ACCESS_TOKEN":"tu_token_supabase"

}

},

"github": {

"command":"cmd",

"args": ["/c", "npx", "-y", "@modelcontextprotocol/server-github"],

"env": {

"GITHUB_PERSONAL_ACCESS_TOKEN":"ghp_tu_token_github"

} } } }

🎯 Capacidades del MCP de GitHub

Con el servidor MCP de GitHub configurado, Claude puede:

Repositorios:

  • Listar repositorios
  • Crear repositorios
  • Ver información de repos
  • Buscar en código

Issues:

  • Crear issues
  • Listar issues
  • Comentar en issues
  • Cerrar/abrir issues

Pull Requests:

  • Crear PRs
  • Listar PRs
  • Revisar PRs
  • Mergear PRs

Commits:

  • Ver historial
  • Crear commits
  • Revisar cambios

Branches:

  • Crear branches
  • Listar branches
  • Cambiar entre branches

Files:

  • Leer archivos
  • Editar archivos
  • Crear archivos