GitHub MCP

oficial

Servidor oficial de GitHub MCP para búsqueda de repositorios, issues, pull requests, contexto de código y flujos de trabajo de GitHub en clientes de IA compatibles con MCP.

¿Qué puedes hacer con Git Hub MCP?

  • Explorar y buscar repositorios — Pídele a tu asistente que encuentre archivos, lea código o analice el historial de confirmaciones usando herramientas del conjunto repos.
  • Gestionar incidencias y solicitudes de extracción — Crea, actualiza y clasifica incidencias o PRs con herramientas de los conjuntos issues y pull_requests.
  • Monitorear flujos de trabajo CI/CD — Verifica el estado de ejecución de GitHub Actions, investiga fallos de compilación y gestiona versiones mediante el conjunto actions.
  • Revisar alertas de seguridad de código — Examina hallazgos de análisis de código, alertas de Dependabot y resultados de escaneo de secretos usando los conjuntos code_security, dependabot y secret_protection.
  • Colaborar en debates y proyectos — Accede a debates de equipo, gestiona tableros de proyectos y maneja notificaciones a través de los conjuntos discussions, projects y notifications.

Documentación

Go Report Card

Servidor MCP de GitHub

El Servidor MCP de GitHub conecta herramientas de IA directamente con la plataforma de GitHub. Esto permite a agentes de IA, asistentes y chatbots leer repositorios y archivos de código, gestionar incidencias y PRs, analizar código y automatizar flujos de trabajo. Todo mediante interacciones en lenguaje natural.

Casos de Uso

  • Gestión de Repositorios: Navega y consulta código, busca archivos, analiza commits y comprende la estructura del proyecto en cualquier repositorio al que tengas acceso.
  • Automatización de Incidencias y PRs: Crea, actualiza y gestiona incidencias y pull requests. Deja que la IA te ayude a clasificar errores, revisar cambios de código y mantener los tableros de proyecto.
  • Inteligencia de CI/CD y Flujos de Trabajo: Monitoriza las ejecuciones de GitHub Actions, analiza fallos de compilación, gestiona lanzamientos y obtén información sobre tu pipeline de desarrollo.
  • Análisis de Código: Examina hallazgos de seguridad, revisa alertas de Dependabot, comprende patrones de código y obtén información completa sobre tu base de código.
  • Colaboración en Equipo: Accede a discusiones, gestiona notificaciones, analiza la actividad del equipo y optimiza procesos para tu equipo.

Diseñado para desarrolladores que quieren conectar sus herramientas de IA al contexto y las capacidades de GitHub, desde simples consultas en lenguaje natural hasta complejos flujos de trabajo de agentes de múltiples pasos.


Servidor MCP Remoto de GitHub

Install in VS Code Install in VS Code Insiders Install in Visual Studio

El servidor MCP remoto de GitHub está alojado por GitHub y proporciona el método más sencillo para empezar a funcionar. Si tu host MCP no soporta servidores MCP remotos, ¡no te preocupes! Puedes usar la versión local del Servidor MCP de GitHub en su lugar.

Prerrequisitos

  1. Un host MCP compatible con soporte para servidor remoto (VS Code 1.101+, Claude Desktop, Cursor, Windsurf, etc.)
  2. Cualquier política aplicable habilitada

Instalar en VS Code

Para una instalación rápida, usa uno de los botones de instalación en un clic de arriba. Una vez que completes ese flujo, activa el modo Agente (ubicado junto a la entrada de texto de Copilot Chat) y el servidor se iniciará. Asegúrate de estar usando VS Code 1.101 o posterior para soporte de MCP remoto y OAuth.

Alternativamente, para configurar VS Code manualmente, elige el bloque JSON apropiado de los ejemplos a continuación y agrégalo a la configuración de tu host:

Usando OAuthUsando un PAT de GitHub
VS Code (versión 1.101 o superior)
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/"
    }
  }
}
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer ${input:github_mcp_pat}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "github_mcp_pat",
      "description": "GitHub Personal Access Token",
      "password": true
    }
  ]
}

Instalar en otros hosts MCP

  • Copilot CLI - Guía de instalación para GitHub Copilot CLI
  • GitHub Copilot en otros IDEs - Instalación para JetBrains, Visual Studio, Eclipse y Xcode con GitHub Copilot
  • Aplicaciones Claude - Guía de instalación para Claude Desktop y Claude Code CLI
  • Codex - Guía de instalación para OpenAI Codex
  • Cursor - Guía de instalación para Cursor IDE
  • OpenCode - Guía de instalación para el agente de terminal OpenCode
  • Windsurf - Guía de instalación para Windsurf IDE
  • Zed - Guía de instalación para el editor Zed
  • Rovo Dev CLI - Guía de instalación para Rovo Dev CLI

Nota: Cada aplicación host MCP necesita configurar una GitHub App u OAuth App para soportar el acceso remoto a través de OAuth. Cualquier aplicación host que soporte servidores MCP remotos debería soportar el servidor remoto de GitHub con autenticación PAT. Los detalles de configuración y los niveles de soporte varían según el host. Asegúrate de consultar la documentación de la aplicación host para más información.

Configuración

Configuración de conjuntos de herramientas

Consulta la Documentación del Servidor Remoto para obtener todos los detalles sobre la configuración del servidor remoto, conjuntos de herramientas, cabeceras y uso avanzado. Este archivo proporciona instrucciones completas y ejemplos para conectar, personalizar e instalar el servidor MCP remoto de GitHub en VS Code y otros hosts MCP.

Cuando no se especifican conjuntos de herramientas, se utilizan los conjuntos de herramientas predeterminados.

Modo Insiders

¡Prueba las nuevas funciones antes! El servidor remoto ofrece una versión insiders con acceso anticipado a nuevas funciones y herramientas experimentales.

Usando Ruta URLUsando Cabecera
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/insiders"
    }
  }
}
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "X-MCP-Insiders": "true"
      }
    }
  }
}

Consulta la Documentación del Servidor Remoto para más detalles y ejemplos, y Funciones Insiders para una lista completa de lo que está disponible.

GitHub Enterprise

GitHub Enterprise Cloud con residencia de datos (ghe.com)

GitHub Enterprise Cloud también puede hacer uso del servidor remoto.

Ejemplo para https://octocorp.ghe.com con token PAT de GitHub:

{
    ...
    "github-octocorp": {
      "type": "http",
      "url": "https://copilot-api.octocorp.ghe.com/mcp",
      "headers": {
        "Authorization": "Bearer ${input:github_mcp_pat}"
      }
    },
    ...
}

Nota: Al usar OAuth con GitHub Enterprise con VS Code y GitHub Copilot, también necesitas configurar los ajustes de VS Code para que apunten a tu instancia de GitHub Enterprise - consulta Autenticar desde VS Code

GitHub Enterprise Server

GitHub Enterprise Server no soporta el alojamiento de servidor remoto. Consulta GitHub Enterprise Server y Enterprise Cloud con residencia de datos (ghe.com) de la configuración del servidor local.


Servidor MCP Local de GitHub

Install with Docker in VS Code Install with Docker in VS Code Insiders Install with Docker in Visual Studio

Prerrequisitos

  1. Para ejecutar el servidor en un contenedor, necesitarás tener Docker instalado.

  2. Una vez que Docker esté instalado, también necesitarás asegurarte de que Docker esté en ejecución. La imagen de Docker está disponible en ghcr.io/github/github-mcp-server. La imagen es pública; si obtienes errores al descargar, es posible que tengas un token expirado y necesites docker logout ghcr.io.

  3. Autenticación. En github.com no necesitas crear nada por adelantado — los botones de un clic de arriba te autentican con OAuth en el primer uso (un flujo basado en navegador; el token se mantiene solo en memoria). Los botones de Docker publican un puerto de callback fijo (127.0.0.1:8085) para que el callback de inicio de sesión del contenedor sea accesible. Consulta Inicio de Sesión OAuth del Servidor Local para saber cómo funciona, la alternativa sin interfaz gráfica/código de dispositivo, y cómo traer tu propia OAuth o GitHub App (requerido para GitHub Enterprise Server y ghe.com).

    ¿Prefieres un token? Aún puedes autenticarte con un Token de Acceso Personal de GitHub configurando GITHUB_PERSONAL_ACCESS_TOKEN en su lugar (tiene prioridad sobre OAuth). El servidor MCP puede usar muchas de las APIs de GitHub, así que habilita los permisos que te sientas cómodo otorgando a tus herramientas de IA (para aprender más sobre los tokens de acceso, consulta la documentación).

Manejo Seguro de PATs

Variables de Entorno (Recomendado)

Para mantener tu PAT de GitHub seguro y reutilizable en diferentes hosts MCP:

  1. Almacena tu PAT en variables de entorno

    export GITHUB_PAT=your_token_here
    

    O crea un archivo .env:

    GITHUB_PAT=your_token_here
    
  2. Protege tu archivo .env

    # Add to .gitignore to prevent accidental commits
    echo ".env" >> .gitignore
    
  3. Referencia el token en las configuraciones

    # CLI usage
    claude mcp add github -e GITHUB_PERSONAL_ACCESS_TOKEN=$GITHUB_PAT -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server
    
    # In config files (where supported)
    "env": {
      "GITHUB_PERSONAL_ACCESS_TOKEN": "$GITHUB_PAT"
    }
    

Nota: El soporte para variables de entorno varía según la aplicación host y el IDE. Algunas aplicaciones (como Windsurf) requieren tokens codificados en los archivos de configuración.

Mejores Prácticas de Seguridad para Tokens

  • Ámbitos mínimos: Otorga solo los permisos necesarios

    • repo - Operaciones de repositorio
    • read:packages - Acceso a la imagen de Docker
    • read:org - Acceso al equipo de la organización
  • Tokens separados: Usa diferentes PATs para diferentes proyectos/entornos

  • Rotación regular: Actualiza los tokens periódicamente

  • Nunca commits: Mantén los tokens fuera del control de versiones

  • Permisos de archivo: Restringe el acceso a los archivos de configuración que contienen tokens

    chmod 600 ~/.your-app/config.json
    

GitHub Enterprise Server y Enterprise Cloud con residencia de datos (ghe.com)

La bandera --gh-host y la variable de entorno GITHUB_HOST se pueden usar para establecer el nombre de host para GitHub Enterprise Server o GitHub Enterprise Cloud con residencia de datos.

  • Para GitHub Enterprise Server, prefija el nombre de host con el esquema URI https://, ya que de lo contrario predetermina http://, que GitHub Enterprise Server no soporta.
  • Para GitHub Enterprise Cloud con residencia de datos, usa https://YOURSUBDOMAIN.ghe.com como nombre de host.
"github": {
    "command": "docker",
    "args": [
    "run",
    "-i",
    "--rm",
    "-e",
    "GITHUB_PERSONAL_ACCESS_TOKEN",
    "-e",
    "GITHUB_HOST",
    "ghcr.io/github/github-mcp-server"
    ],
    "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}",
        "GITHUB_HOST": "https://<your GHES or ghe.com domain name>"
    }
}

Instalación

Instalar en GitHub Copilot en VS Code

Para una instalación rápida, usa uno de los botones de instalación en un clic de arriba. Una vez que completes ese flujo, activa el modo Agente (ubicado junto a la entrada de texto de Copilot Chat) y el servidor se iniciará.

Más sobre el uso de herramientas del servidor MCP en la documentación del modo agente de VS Code.

Instalar en GitHub Copilot en otros IDEs (JetBrains, Visual Studio, Eclipse, etc.)

Agrega uno de los siguientes bloques JSON a la configuración MCP de tu IDE.

Inicia sesión con OAuth (sin token que crear o almacenar). En github.com, la imagen oficial ya incluye las credenciales de la app, por lo que no proporcionas ninguna: ejecuta un inicio de sesión basado en navegador en el primer uso y mantiene el token resultante solo en memoria. En Docker, esto necesita un puerto de callback fijo publicado en loopback para que el callback de inicio de sesión del contenedor sea accesible:

{
  "mcp": {
    "servers": {
      "github": {
        "command": "docker",
        "args": [
          "run",
          "-i",
          "--rm",
          "-p",
          "127.0.0.1:8085:8085",
          "-e",
          "GITHUB_OAUTH_CALLBACK_PORT",
          "ghcr.io/github/github-mcp-server"
        ],
        "env": {
          "GITHUB_OAUTH_CALLBACK_PORT": "8085"
        }
      }
    }
  }
}

Consulta Inicio de Sesión OAuth del Servidor Local para el flujo de binario nativo (sin necesidad de puerto fijo), la alternativa sin interfaz gráfica/código de dispositivo, GitHub Enterprise Server / ghe.com, y cómo traer tu propia OAuth o GitHub App.

O autentícate con un Token de Acceso Personal. Configura GITHUB_PERSONAL_ACCESS_TOKEN en su lugar (tiene prioridad sobre OAuth):

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "github_token",
        "description": "GitHub Personal Access Token",
        "password": true
      }
    ],
    "servers": {
      "github": {
        "command": "docker",
        "args": [
          "run",
          "-i",
          "--rm",
          "-e",
          "GITHUB_PERSONAL_ACCESS_TOKEN",
          "ghcr.io/github/github-mcp-server"
        ],
        "env": {
          "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
        }
      }
    }
  }
}

Opcionalmente, puedes agregar un ejemplo similar (es decir, sin la clave mcp) a un archivo llamado .vscode/mcp.json en tu espacio de trabajo. Esto te permitirá compartir la configuración con otras aplicaciones host que acepten el mismo formato.

Ejemplo de bloque JSON sin la clave MCP incluida
{
  "inputs": [
    {
      "type": "promptString",
      "id": "github_token",
      "description": "GitHub Personal Access Token",
      "password": true
    }
  ],
  "servers": {
    "github": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
      }
    }
  }
}

Instalar en Otros Hosts MCP

Para otras aplicaciones host MCP, consulta nuestras guías de instalación:

Para una visión completa de todas las opciones de instalación, consulta nuestro Índice de Guías de Instalación.

Nota: Cualquier aplicación host que soporte servidores MCP locales debería poder acceder al servidor MCP local de GitHub. Sin embargo, el proceso de configuración específico, la sintaxis y la estabilidad de la integración variarán según la aplicación host. Aunque muchas pueden seguir un formato similar a los ejemplos anteriores, esto no está garantizado. Consulta la documentación de tu aplicación host para conocer la sintaxis de configuración MCP correcta y el proceso de configuración.

Compilar desde el código fuente

Si no tienes Docker, puedes usar go build para compilar el binario en el directorio cmd/github-mcp-server, y usar el comando github-mcp-server stdio con la variable de entorno GITHUB_PERSONAL_ACCESS_TOKEN configurada con tu token. Para especificar la ubicación de salida de la compilación, usa la bandera -o. Debes configurar tu servidor para que use el ejecutable compilado como su command. Por ejemplo:

{
  "mcp": {
    "servers": {
      "github": {
        "command": "/path/to/github-mcp-server",
        "args": ["stdio"],
        "env": {
          "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
        }
      }
    }
  }
}

Utilidades de CLI

El binario github-mcp-server incluye algunos subcomandos de CLI que son útiles para depurar y explorar el servidor.

  • github-mcp-server tool-search "<query>" busca herramientas por nombre, descripción y nombres de parámetros de entrada. Usa --max-results para devolver más coincidencias. Ejemplo (la salida en color requiere una TTY; usa docker run -t (o -it) al ejecutar en Docker):
docker run -it --rm ghcr.io/github/github-mcp-server tool-search "issue" --max-results 5
github-mcp-server tool-search "issue" --max-results 5

Configuración de herramientas

El Servidor MCP de GitHub permite habilitar o deshabilitar grupos específicos de funcionalidades mediante la bandera --toolsets. Esto te permite controlar qué capacidades de la API de GitHub están disponibles para tus herramientas de IA. Habilitar solo los conjuntos de herramientas que necesitas puede ayudar al LLM con la elección de herramientas y reducir el tamaño del contexto.

Los conjuntos de herramientas no se limitan a Herramientas. También se incluyen Recursos MCP y Prompts relevantes cuando corresponde.

Cuando no se especifican conjuntos de herramientas, se usan los conjuntos de herramientas predeterminados.

¿Buscas ejemplos? Consulta la Guía de configuración del servidor para recetas comunes como configuraciones mínimas, modo de solo lectura y combinación de herramientas con conjuntos de herramientas.

Especificar conjuntos de herramientas

Para especificar los conjuntos de herramientas que quieres que estén disponibles para el LLM, puedes pasar una lista de permitidos de dos maneras:

  1. Usando un argumento de línea de comandos:

    github-mcp-server --toolsets repos,issues,pull_requests,actions,code_security
    
  2. Usando una variable de entorno:

    GITHUB_TOOLSETS="repos,issues,pull_requests,actions,code_security" ./github-mcp-server
    

La variable de entorno GITHUB_TOOLSETS tiene prioridad sobre el argumento de línea de comandos si se proporcionan ambos.

Especificar herramientas individuales

También puedes configurar herramientas específicas usando la bandera --tools. Las herramientas se pueden usar de forma independiente o combinadas con conjuntos de herramientas para un control detallado.

  1. Usando un argumento de línea de comandos:

    github-mcp-server --tools get_file_contents,issue_read,create_pull_request
    
  2. Usando una variable de entorno:

    GITHUB_TOOLS="get_file_contents,issue_read,create_pull_request" ./github-mcp-server
    
  3. Combinando con conjuntos de herramientas (aditivo):

    github-mcp-server --toolsets repos,issues --tools get_gist
    

    Esto registra todas las herramientas de los conjuntos repos y issues, más get_gist.

Notas importantes:

  • Las herramientas y los conjuntos de herramientas se pueden usar juntos
  • El modo de solo lectura tiene prioridad: las herramientas de escritura se omiten si --read-only está configurado, incluso si se solicitan explícitamente a través de --tools
  • Los nombres de las herramientas deben coincidir exactamente (por ejemplo, get_file_contents, no getFileContents). Los nombres de herramientas no válidos harán que el servidor falle al iniciar con un mensaje de error
  • Cuando se renombran las herramientas, los nombres antiguos se conservan como alias para compatibilidad con versiones anteriores. Consulta Renombrar herramientas para más detalles.

Usar conjuntos de herramientas con Docker

Al usar Docker, puedes pasar los conjuntos de herramientas como variables de entorno:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_TOOLSETS="repos,issues,pull_requests,actions,code_security" \
  ghcr.io/github/github-mcp-server

Usar herramientas con Docker

Al usar Docker, puedes pasar herramientas específicas como variables de entorno. También puedes combinar herramientas con conjuntos de herramientas:

# Tools only
docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_TOOLS="get_file_contents,issue_read,create_pull_request" \
  ghcr.io/github/github-mcp-server

# Tools combined with toolsets (additive)
docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_TOOLSETS="repos,issues" \
  -e GITHUB_TOOLS="get_gist" \
  ghcr.io/github/github-mcp-server

Conjuntos de herramientas especiales

Conjunto de herramientas "all"

El conjunto de herramientas especial all se puede proporcionar para habilitar todos los conjuntos de herramientas disponibles independientemente de cualquier otra configuración:

./github-mcp-server --toolsets all

O usando la variable de entorno:

GITHUB_TOOLSETS="all" ./github-mcp-server

Conjunto de herramientas "default"

El conjunto de herramientas predeterminado default es la configuración que se pasa al servidor si no se especifican conjuntos de herramientas.

La configuración predeterminada es:

  • context
  • repos
  • issues
  • pull_requests
  • users

Para mantener la configuración predeterminada y agregar conjuntos de herramientas adicionales:

GITHUB_TOOLSETS="default,stargazers" ./github-mcp-server

Modo Insiders

El Servidor MCP de GitHub local ofrece una versión insiders con acceso anticipado a nuevas funciones y herramientas experimentales.

  1. Usando un argumento de línea de comandos:

    ./github-mcp-server --insiders
    
  2. Usando una variable de entorno:

    GITHUB_INSIDERS=true ./github-mcp-server
    

Al usar Docker:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_INSIDERS=true \
  ghcr.io/github/github-mcp-server

Conjuntos de herramientas disponibles

Los siguientes conjuntos de herramientas están disponibles:

Conjunto de herramientasDescripción
personcontextAltamente recomendado: Herramientas que proporcionan contexto sobre el usuario actual y el contexto de GitHub en el que estás operando
workflowactionsFlujos de trabajo de GitHub Actions y operaciones de CI/CD
code-squarecode_qualityHerramientas relacionadas con la calidad del código en GitHub
codescancode_securityHerramientas relacionadas con la seguridad del código, como el Escaneo de Código de GitHub
copilotcopilotHerramientas relacionadas con Copilot
dependabotdependabotHerramientas de Dependabot
comment-discussiondiscussionsHerramientas relacionadas con GitHub Discussions
logo-gistgistsHerramientas relacionadas con GitHub Gist
git-branchgitHerramientas relacionadas con la API Git de GitHub para operaciones Git de bajo nivel
issue-openedissuesHerramientas relacionadas con GitHub Issues
taglabelsHerramientas relacionadas con GitHub Labels
bellnotificationsHerramientas relacionadas con GitHub Notifications
organizationorgsHerramientas relacionadas con GitHub Organization
projectprojectsHerramientas relacionadas con GitHub Projects
git-pull-requestpull_requestsHerramientas relacionadas con GitHub Pull Request
reporeposHerramientas relacionadas con GitHub Repository
shield-locksecret_protectionHerramientas relacionadas con la protección de secretos, como el Escaneo de Secretos de GitHub
shieldsecurity_advisoriesHerramientas relacionadas con avisos de seguridad
starstargazersHerramientas relacionadas con GitHub Stargazers
peopleusersHerramientas relacionadas con GitHub User

Conjuntos de herramientas adicionales en el Servidor MCP de GitHub Remoto

Conjunto de herramientasDescripción
copilotHerramientas relacionadas con Copilot (p. ej., Copilot Coding Agent)
copilot_spacesHerramientas relacionadas con Copilot Spaces
github_support_docs_searchBuscar documentación para responder preguntas sobre productos y soporte de GitHub

Herramientas

workflow Actions
  • actions_get - Obtener detalles de recursos de GitHub Actions (flujos de trabajo, ejecuciones de flujo de trabajo, trabajos y artefactos)

    • Ámbitos de OAuth requeridos: repo
    • method: El método a ejecutar (cadena, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • resource_id: El identificador único del recurso. Esto variará según el "método" proporcionado, así que asegúrate de proporcionar el ID correcto:
      • Proporciona un ID de flujo de trabajo o nombre de archivo de flujo de trabajo (p. ej., ci.yaml) para el método 'get_workflow'.
      • Proporciona un ID de ejecución de flujo de trabajo para los métodos 'get_workflow_run', 'get_workflow_run_usage' y 'get_workflow_run_logs_url'.
      • Proporciona un ID de artefacto para el método 'download_workflow_run_artifact'.
      • Proporciona un ID de trabajo para el método 'get_workflow_job'. (cadena, requerido)
  • actions_list - Listar flujos de trabajo de GitHub Actions en un repositorio

    • Ámbitos de OAuth requeridos: repo
    • method: La acción a realizar (cadena, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (predeterminado: 1) (número, opcional)
    • per_page: Resultados por página para paginación (predeterminado: 30, máx.: 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
    • resource_id: El identificador único del recurso. Esto variará según el "método" proporcionado, así que asegúrate de proporcionar el ID correcto:
      • No proporciones ningún ID de recurso para el método 'list_workflows'.
      • Proporciona un ID de flujo de trabajo o nombre de archivo de flujo de trabajo (p. ej., ci.yaml) para el método 'list_workflow_runs', u omítelo para listar todas las ejecuciones de flujo de trabajo en el repositorio.
      • Proporciona un ID de ejecución de flujo de trabajo para los métodos 'list_workflow_jobs' y 'list_workflow_run_artifacts'. (cadena, opcional)
    • workflow_jobs_filter: Filtros para trabajos de flujo de trabajo. SOLO se usa cuando el método es 'list_workflow_jobs' (objeto, opcional)
    • workflow_runs_filter: Filtros para ejecuciones de flujo de trabajo. SOLO se usa cuando el método es 'list_workflow_runs' (objeto, opcional)
  • actions_run_trigger - Activar acciones de flujo de trabajo de GitHub Actions

    • Ámbitos de OAuth requeridos: repo
    • inputs: Entradas que acepta el flujo de trabajo. Solo se usa para el método 'run_workflow'. (objeto, opcional)
    • method: El método a ejecutar (cadena, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • ref: La referencia git para el flujo de trabajo. La referencia puede ser un nombre de rama o etiqueta. Requerido para el método 'run_workflow'. (cadena, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
    • run_id: El ID de la ejecución del flujo de trabajo. Requerido para todos los métodos excepto 'run_workflow'. (número, opcional)
    • workflow_id: El ID del flujo de trabajo (numérico) o nombre de archivo del flujo de trabajo (p. ej., main.yml, ci.yaml). Requerido para el método 'run_workflow'. (cadena, opcional)
  • get_job_logs - Obtener registros de trabajos de flujo de trabajo de GitHub Actions

    • Ámbitos de OAuth requeridos: repo
    • failed_only: Cuando es true, obtiene registros para todos los trabajos fallidos en la ejecución del flujo de trabajo especificada por run_id. Requiere que se proporcione run_id. (booleano, opcional)
    • job_id: El identificador único del trabajo del flujo de trabajo. Requerido al obtener registros para un solo trabajo. (número, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • return_content: Devuelve el contenido real del registro en lugar de URLs (booleano, opcional)
    • run_id: El identificador único de la ejecución del flujo de trabajo. Requerido cuando failed_only es true para obtener registros de todos los trabajos fallidos en la ejecución. (número, opcional)
    • tail_lines: Número de líneas a devolver desde el final del registro (número, opcional)
code-square Calidad del Código- **get_code_quality_finding** - Obtener hallazgo de calidad de código - **Ámbitos de OAuth requeridos**: `repo` - `findingNumber`: El número del hallazgo. (número, requerido) - `owner`: El propietario del repositorio. (cadena, requerido) - `repo`: El nombre del repositorio. (cadena, requerido)
codescan Seguridad de Código
  • get_code_scanning_alert - Obtener alerta de escaneo de código

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • alertNumber: El número de la alerta. (número, requerido)
    • owner: El propietario del repositorio. (cadena, requerido)
    • repo: El nombre del repositorio. (cadena, requerido)
  • list_code_scanning_alerts - Listar alertas de escaneo de código

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • owner: El propietario del repositorio. (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • ref: La referencia Git para los resultados que deseas listar. (cadena, opcional)
    • repo: El nombre del repositorio. (cadena, requerido)
    • severity: Filtrar alertas de escaneo de código por severidad (cadena, opcional)
    • state: Filtrar alertas de escaneo de código por estado. Por defecto, abiertas (cadena, opcional)
    • tool_name: El nombre de la herramienta utilizada para el escaneo de código. (cadena, opcional)
person Contexto
  • get_me - Obtener mi perfil de usuario

    • No se requieren parámetros
  • get_team_members - Obtener miembros del equipo

    • Ámbitos de OAuth requeridos: read:org
    • Ámbitos de OAuth aceptados: admin:org, read:org, write:org
    • org: Login de la organización (propietario) que contiene el equipo. (cadena, requerido)
    • team_slug: Slug del equipo (cadena, requerido)
  • get_teams - Obtener equipos

    • Ámbitos de OAuth requeridos: read:org
    • Ámbitos de OAuth aceptados: admin:org, read:org, write:org
    • user: Nombre de usuario para el cual obtener equipos. Si no se proporciona, usa el usuario autenticado. (cadena, opcional)
copilot Copilot
  • assign_copilot_to_issue - Asignar Copilot a una incidencia

    • Ámbitos de OAuth requeridos: repo
    • base_ref: Referencia Git (ej., rama) desde la cual el agente comenzará su trabajo. Si no se especifica, usa la rama por defecto del repositorio (cadena, opcional)
    • custom_instructions: Instrucciones personalizadas opcionales para guiar al agente más allá del cuerpo de la incidencia. Úsalo para proporcionar contexto adicional, restricciones u orientación no capturada en la descripción de la incidencia (cadena, opcional)
    • issue_number: Número de incidencia (número, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • request_copilot_review - Solicitar revisión de Copilot

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • pullNumber: Número de pull request (número, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
dependabot Dependabot
  • get_dependabot_alert - Obtener alerta de Dependabot

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • alertNumber: El número de la alerta. (número, requerido)
    • owner: El propietario del repositorio. (cadena, requerido)
    • repo: El nombre del repositorio. (cadena, requerido)
  • list_dependabot_alerts - Listar alertas de Dependabot

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • after: Cursor para paginación. Usa el cursor de la respuesta anterior. (cadena, opcional)
    • owner: El propietario del repositorio. (cadena, requerido)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: El nombre del repositorio. (cadena, requerido)
    • severity: Filtrar alertas de Dependabot por severidad (cadena, opcional)
    • state: Filtrar alertas de Dependabot por estado. Por defecto, abiertas (cadena, opcional)
comment-discussion Discusiones
  • discussion_comment_write - Gestionar comentarios de discusión

    • Ámbitos de OAuth requeridos: repo
    • body: Contenido del comentario (requerido para los métodos 'add', 'reply' y 'update') (cadena, opcional)
    • commentNodeID: El ID de nodo del comentario de discusión (requerido para los métodos 'reply', 'update', 'delete', 'mark_answer' y 'unmark_answer'). Para 'reply', este es el comentario de nivel superior al que responder; las Discusiones de GitHub solo admiten un nivel de anidamiento. (cadena, opcional)
    • discussionNumber: Número de discusión (requerido para los métodos 'add' y 'reply') (número, opcional)
    • method: Operación de escritura a realizar en un comentario de discusión. Las opciones son:
      • 'add' - añade un nuevo comentario de nivel superior a una discusión.
      • 'reply' - responde a un comentario de discusión de nivel superior (las Discusiones de GitHub solo admiten un nivel de anidamiento).
      • 'update' - actualiza un comentario de discusión existente.
      • 'delete' - elimina un comentario de discusión.
      • 'mark_answer' - marca un comentario de discusión como la respuesta (solo Q&A).
      • 'unmark_answer' - desmarca un comentario de discusión como la respuesta (solo Q&A). (cadena, requerido)
    • owner: Propietario del repositorio (requerido para los métodos 'add' y 'reply') (cadena, opcional)
    • repo: Nombre del repositorio (requerido para los métodos 'add' y 'reply') (cadena, opcional)
  • get_discussion - Obtener discusión

    • Ámbitos de OAuth requeridos: repo
    • discussionNumber: Número de discusión (número, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • get_discussion_comments - Obtener comentarios de discusión

    • Ámbitos de OAuth requeridos: repo
    • after: Cursor para paginación. Usa el cursor de la respuesta anterior. (cadena, opcional)
    • discussionNumber: Número de discusión (número, requerido)
    • includeReplies: Cuando es true, cada comentario de nivel superior incluirá sus respuestas anidadas dentro de él (hasta 100 respuestas por comentario, que es el máximo de la API de GitHub). Por defecto es false. (booleano, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
  • list_discussion_categories - Listar categorías de discusión

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio. Si no se proporciona, las categorías de discusión se consultarán a nivel de organización. (cadena, opcional)
  • list_discussions - Listar discusiones

    • Ámbitos de OAuth requeridos: repo
    • after: Cursor para paginación. Usa el cursor de la respuesta anterior. (cadena, opcional)
    • category: Filtro opcional por ID de categoría de discusión. Si se proporciona, solo se listan las discusiones con esta categoría. (cadena, opcional)
    • direction: Dirección de orden. (cadena, opcional)
    • orderBy: Ordenar discusiones por campo. Si se proporciona, también se debe proporcionar la 'dirección'. (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio. Si no se proporciona, las discusiones se consultarán a nivel de organización. (cadena, opcional)
logo-gist Gists
  • create_gist - Crear Gist

    • Ámbitos de OAuth requeridos: gist
    • content: Contenido para la creación simple de un gist de un solo archivo (cadena, requerido)
    • description: Descripción del gist (cadena, opcional)
    • filename: Nombre de archivo para la creación simple de un gist de un solo archivo (cadena, requerido)
    • public: Si el gist es público (booleano, opcional)
  • get_gist - Obtener contenido de Gist

    • gist_id: El ID del gist (cadena, requerido)
  • list_gists - Listar Gists

    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • since: Solo gists actualizados después de este tiempo (marca de tiempo ISO 8601) (cadena, opcional)
    • username: Nombre de usuario de GitHub (omitir para los gists del usuario autenticado) (cadena, opcional)
  • update_gist - Actualizar Gist

    • Ámbitos de OAuth requeridos: gist
    • content: Contenido para el archivo (cadena, requerido)
    • description: Descripción actualizada del gist (cadena, opcional)
    • filename: Nombre de archivo a actualizar o crear (cadena, requerido)
    • gist_id: ID del gist a actualizar (cadena, requerido)
git-branch Git
  • get_repository_tree - Obtener árbol del repositorio
    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (nombre de usuario u organización) (cadena, requerido)
    • path_filter: Prefijo de ruta opcional para filtrar los resultados del árbol (ej., 'src/' para mostrar solo archivos en el directorio src) (cadena, opcional)
    • recursive: Establecer este parámetro a true devuelve los objetos o subárboles referenciados por el árbol. Por defecto es false (booleano, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
    • tree_sha: El valor SHA1 o nombre de ref (rama o etiqueta) del árbol. Por defecto, la rama por defecto del repositorio (cadena, opcional)
issue-opened Incidencias
  • add_issue_comment - Añadir comentario a incidencia o pull request

    • Ámbitos de OAuth requeridos: repo
    • body: Contenido del comentario. Requerido a menos que se proporcione una reacción. (cadena, opcional)
    • comment_id: El ID numérico del comentario de la incidencia o pull request al que reaccionar. Úsalo para reacciones a comentarios; omítelo para reaccionar a la incidencia o pull request en sí. No se puede combinar con body. (número, opcional)
    • issue_number: Número de incidencia o pull request a comentar o al que reaccionar. (número, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • reaction: Reacción emoji a añadir. Requerido a menos que se proporcione body. (cadena, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
  • get_label - Obtener una etiqueta específica de un repositorio

    • Ámbitos de OAuth requeridos: repo
    • name: Nombre de la etiqueta. (cadena, requerido)
    • owner: Propietario del repositorio (nombre de usuario o nombre de la organización) (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • issue_read - Obtener detalles de un issue

    • Ámbitos de OAuth requeridos: repo
    • issue_number: El número del issue (número, requerido)
    • method: La operación de lectura a realizar en un solo issue. Las opciones son:
      1. get - Obtener detalles del issue. También devuelve indicadores de jerarquía de mejor esfuerzo (has_parent, has_children); parent y sub_issues_summary son resúmenes de relación opcionales.
      2. get_comments - Obtener comentarios del issue.
      3. get_sub_issues - Obtener sub-issues (hijos) del issue.
      4. get_parent - Obtener el issue padre, si este issue es un sub-issue de otro.
      5. get_labels - Obtener las etiquetas asignadas al issue. (cadena, requerido)
    • owner: El propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: El nombre del repositorio (cadena, requerido)
  • issue_write - Crear o actualizar issue/pull request

    • Ámbitos de OAuth requeridos: repo
    • assignees: Nombres de usuario a asignar a este issue (cadena[], opcional)
    • body: Contenido del cuerpo del issue (cadena, opcional)
    • duplicate_of: Número de issue del cual este issue es un duplicado. Solo se usa cuando state_reason es 'duplicate'. (número, opcional)
    • issue_fields: Valores de campos del issue a establecer o limpiar. Cada elemento requiere 'field_name' y exactamente uno de 'value', 'field_option_name', o 'delete: true'. (objeto[], opcional)
    • issue_number: Número de issue a actualizar (número, opcional)
    • labels: Etiquetas a aplicar a este issue (cadena[], opcional)
    • method: Operación de escritura a realizar en un solo issue. Las opciones son:
      • 'create' - crea un nuevo issue.
      • 'update' - actualiza un issue existente. (cadena, requerido)
    • milestone: Número de milestone (número, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • state: Nuevo estado (cadena, opcional)
    • state_reason: Razón del cambio de estado. Se ignora a menos que se cambie el estado. (cadena, opcional)
    • title: Título del issue (cadena, opcional)
    • type: Tipo de este issue. Úsalo solo si los tipos de issue están habilitados para este repositorio. Usa la herramienta list_issue_types para obtener valores de tipo válidos para este repositorio o su organización propietaria. Si el repositorio no admite tipos de issue, omite este parámetro. (cadena, opcional)
  • list_issue_fields - Listar campos de issue

    • Ámbitos de OAuth requeridos (cualquiera de): repo, read:org
    • Ámbitos de OAuth aceptados: admin:org, read:org, repo, write:org
    • owner: El propietario de la cuenta del repositorio u organización. El nombre no distingue entre mayúsculas y minúsculas. (cadena, requerido)
    • repo: El nombre del repositorio. Cuando se proporciona, devuelve campos para este repositorio específico (heredados de su organización). Cuando se omite, devuelve campos a nivel de organización directamente. (cadena, opcional)
  • list_issue_types - Listar tipos de issue disponibles

    • Ámbitos de OAuth requeridos (cualquiera de): repo, read:org
    • Ámbitos de OAuth aceptados: admin:org, read:org, repo, write:org
    • owner: El propietario de la cuenta del repositorio u organización. (cadena, requerido)
    • repo: El nombre del repositorio. Cuando se proporciona, devuelve tipos de issue para este repositorio específico. Cuando se omite, devuelve tipos de issue a nivel de organización directamente. (cadena, opcional)
  • list_issues - Listar issues

    • Ámbitos de OAuth requeridos: repo
    • after: Cursor para paginación. Usa el cursor de la respuesta anterior. (cadena, opcional)
    • direction: Dirección de orden. Si se proporciona, también se debe proporcionar 'orderBy'. (cadena, opcional)
    • field_filters: Filtrar por valores de campos de issue personalizados. Cada entrada toma un field_name y un value; el servidor busca el campo y convierte el valor a su tipo (nombre de opción de selección única, texto, número o fecha YYYY-MM-DD). (objeto[], opcional)
    • labels: Filtrar por etiquetas (cadena[], opcional)
    • orderBy: Ordenar issues por campo. Si se proporciona, también se debe proporcionar 'direction'. (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
    • since: Filtrar por fecha (marca de tiempo ISO 8601) (cadena, opcional)
    • state: Filtrar por estado, por defecto se devuelven tanto issues abiertos como cerrados cuando no se proporciona (cadena, opcional)
  • search_issues - Buscar issues

    • Ámbitos de OAuth requeridos: repo
    • order: Orden de clasificación (cadena, opcional)
    • owner: Propietario del repositorio opcional. Si se proporciona con repo, solo se listan los issues de este repositorio. (cadena, opcional)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • query: Consulta de búsqueda usando la sintaxis de búsqueda de issues de GitHub (cadena, requerido)
    • repo: Nombre del repositorio opcional. Si se proporciona con owner, solo se listan los issues de este repositorio. (cadena, opcional)
    • sort: Campo de ordenación por número de coincidencias de categorías, por defecto es mejor coincidencia (cadena, opcional)
  • sub_issue_write - Cambiar sub-issue

    • Ámbitos de OAuth requeridos: repo
    • after_id: El ID del sub-issue a priorizar después (se debe especificar after_id O before_id) (número, opcional)
    • before_id: El ID del sub-issue a priorizar antes (se debe especificar after_id O before_id) (número, opcional)
    • issue_number: El número del issue padre (número, requerido)
    • method: La acción a realizar en un solo sub-issue Las opciones son:
      • 'add' - añadir un sub-issue a un issue padre en un repositorio de GitHub.
      • 'remove' - eliminar un sub-issue de un issue padre en un repositorio de GitHub.
      • 'reprioritize' - cambiar el orden de los sub-issues dentro de un issue padre en un repositorio de GitHub. Usa 'after_id' o 'before_id' para especificar la nueva posición. Escribe la jerarquía de issues. Para mover un sub-issue a un nuevo padre, usa add con replace_parent=true; no hay un campo padre escribible. (cadena, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • replace_parent: Cuando es true, reemplaza el issue padre actual del sub-issue. Úsalo solo con el método 'add'. (booleano, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
    • sub_issue_id: El ID del sub-issue a añadir. El ID no es lo mismo que el número de issue (número, requerido)
tag Etiquetas
  • get_label - Obtener una etiqueta específica de un repositorio

    • Ámbitos de OAuth requeridos: repo
    • name: Nombre de la etiqueta. (cadena, requerido)
    • owner: Propietario del repositorio (nombre de usuario o nombre de la organización) (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • label_write - Operaciones de escritura en etiquetas de repositorio

    • Ámbitos de OAuth requeridos: repo
    • color: Color de la etiqueta como código hexadecimal de 6 caracteres sin prefijo '#' (ej., 'f29513'). Requerido para 'create', opcional para 'update'. (cadena, opcional)
    • description: Texto de descripción de la etiqueta. Opcional para 'create' y 'update'. (cadena, opcional)
    • method: Operación a realizar: 'create', 'update', o 'delete' (cadena, requerido)
    • name: Nombre de la etiqueta - requerido para todas las operaciones (cadena, requerido)
    • new_name: Nuevo nombre para la etiqueta (usado solo con el método 'update' para renombrar) (cadena, opcional)
    • owner: Propietario del repositorio (nombre de usuario o nombre de la organización) (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • list_label - Listar etiquetas de un repositorio

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (nombre de usuario o nombre de la organización) - requerido para todas las operaciones (cadena, requerido)
    • repo: Nombre del repositorio - requerido para todas las operaciones (cadena, requerido)
bell Notificaciones
  • dismiss_notification - Descartar notificación

    • Ámbitos de OAuth requeridos: notifications
    • state: El nuevo estado de la notificación (read/done) (cadena, requerido)
    • threadID: El ID del hilo de notificación (cadena, requerido)
  • get_notification_details - Obtener detalles de notificación

    • Ámbitos de OAuth requeridos: notifications
    • notificationID: El ID de la notificación (cadena, requerido)
  • list_notifications - Listar notificaciones

    • Ámbitos de OAuth requeridos: notifications
    • before: Mostrar solo notificaciones actualizadas antes de la hora dada (formato ISO 8601) (cadena, opcional)
    • filter: Filtrar notificaciones a, usar predeterminado a menos que se especifique. Las notificaciones leídas son aquellas que ya han sido reconocidas por el usuario. Las notificaciones participativas son aquellas en las que el usuario está directamente involucrado, como issues o pull requests que ha comentado o creado. (cadena, opcional)
    • owner: Propietario del repositorio opcional. Si se proporciona con repo, solo se listan las notificaciones de este repositorio. (cadena, opcional)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio opcional. Si se proporciona con owner, solo se listan las notificaciones de este repositorio. (cadena, opcional)
    • since: Mostrar solo notificaciones actualizadas después de la hora dada (formato ISO 8601) (cadena, opcional)
  • manage_notification_subscription - Gestionar suscripción de notificación

    • Ámbitos de OAuth requeridos: notifications
    • action: Acción a realizar: ignore, watch, o delete la suscripción de notificación. (cadena, requerido)
    • notificationID: El ID del hilo de notificación. (cadena, requerido)
  • manage_repository_notification_subscription - Gestionar suscripción de notificación de repositorio

    • Ámbitos de OAuth requeridos: notifications
    • action: Acción a realizar: ignore, watch, o delete la suscripción de notificación del repositorio. (cadena, requerido)
    • owner: El propietario de la cuenta del repositorio. (cadena, requerido)
    • repo: El nombre del repositorio. (cadena, requerido)
  • mark_all_notifications_read - Marcar todas las notificaciones como leídas

    • Ámbitos de OAuth requeridos: notifications
    • lastReadAt: Describe el último punto en que se verificaron las notificaciones (opcional). Predeterminado: Ahora (cadena, opcional)
    • owner: Propietario del repositorio opcional. Si se proporciona con repo, solo las notificaciones de este repositorio se marcan como leídas. (cadena, opcional)
    • repo: Nombre del repositorio opcional. Si se proporciona con owner, solo las notificaciones de este repositorio se marcan como leídas. (cadena, opcional)
organization Organizaciones
  • search_orgs - Buscar organizaciones
    • Ámbitos de OAuth requeridos: read:org
    • Ámbitos de OAuth aceptados: admin:org, read:org, write:org
    • order: Orden de clasificación (cadena, opcional)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • query: Consulta de búsqueda de organizaciones. Ejemplos: 'microsoft', 'location:california', 'created:>=2025-01-01'. La búsqueda se limita automáticamente a type:org. (cadena, requerido)
    • sort: Campo de ordenación por categoría (cadena, opcional)
project Proyectos
  • projects_get - Obtener detalles de recursos de GitHub Projects

    • Ámbitos de OAuth requeridos: read:project
    • Ámbitos de OAuth aceptados: project, read:project
    • field_id: El ID del campo. Requerido para el método 'get_project_field'. (número, opcional)
    • field_names: Lista específica de nombres de campo a incluir en la respuesta al obtener un elemento del proyecto (ej. ["Status", "Priority"]). Se resuelven del lado del servidor a IDs de campo — pase esto en lugar de 'fields' cuando solo conozca los nombres legibles. Mutuamente excluyente con 'fields' — proporcione uno, no ambos. Solo se usa para el método 'get_project_item'. (cadena[], opcional)
    • fields: Lista específica de IDs de campo a incluir en la respuesta al obtener un elemento del proyecto (ej. ["102589", "985201", "169875"]). Si no se proporciona ni 'fields' ni 'field_names', solo se incluye el campo de título. Mutuamente excluyente con 'field_names' — proporcione uno, no ambos. Solo se usa para el método 'get_project_item'. (cadena[], opcional)
    • item_id: El ID del elemento. Requerido para el método 'get_project_item'. (número, opcional)
    • method: El método a ejecutar (cadena, requerido)
    • owner: El propietario (usuario o nombre de organización). El nombre no distingue mayúsculas de minúsculas. (cadena, opcional)
    • owner_type: Tipo de propietario (user u org). Si no se proporciona, se detectará automáticamente. (cadena, opcional)
    • project_number: El número del proyecto. (número, opcional)
    • status_update_id: El ID de nodo de la actualización de estado del proyecto. Requerido para el método 'get_project_status_update'. (cadena, opcional)
  • projects_list - Listar recursos de GitHub Projects

    • Ámbitos de OAuth requeridos: read:project
    • Ámbitos de OAuth aceptados: project, read:project
    • after: Cursor de paginación hacia adelante del nextCursor previo de pageInfo. (cadena, opcional)
    • before: Cursor de paginación hacia atrás del prevCursor previo de pageInfo (raro). (cadena, opcional)
    • field_names: Nombres de campo a incluir al listar elementos del proyecto (ej. ["Status", "Priority"]). Se resuelven del lado del servidor a IDs de campo — pase esto en lugar de 'fields' cuando solo conozca los nombres legibles. Los nombres que no se resuelvan devuelven un error estructurado. Mutuamente excluyente con 'fields' — proporcione uno, no ambos. Solo se usa para el método 'list_project_items'. (cadena[], opcional)
    • fields: IDs de campo a incluir al listar elementos del proyecto (ej. ["102589", "985201"]). CRÍTICO: Proporcione siempre para obtener valores de campo. Sin esto (y sin 'field_names'), solo se devuelven títulos. Mutuamente excluyente con 'field_names' — proporcione uno, no ambos. Solo se usa para el método 'list_project_items'. (cadena[], opcional)
    • method: La acción a realizar (cadena, requerido)
    • owner: El propietario (usuario o nombre de organización). El nombre no distingue mayúsculas de minúsculas. (cadena, requerido)
    • owner_type: Tipo de propietario (user u org). Si no se proporciona, se intentará automáticamente con ambos. (cadena, opcional)
    • per_page: Resultados por página (máx 50) (número, opcional)
    • project_number: El número del proyecto. Requerido para los métodos 'list_project_fields', 'list_project_items' y 'list_project_status_updates'. (número, opcional)
    • query: Cadena de filtro/consulta. Para list_projects: filtrar por texto de título y estado (ej. "roadmap is:open"). Para list_project_items: filtrado avanzado usando la sintaxis de filtrado de proyectos de GitHub. (cadena, opcional)
  • projects_write - Gestionar GitHub Projects

    • Ámbitos de OAuth requeridos: project
    • body: El cuerpo de la actualización de estado (markdown). Se usa para el método 'create_project_status_update'. (cadena, opcional)
    • field_name: El nombre del campo de iteración (ej. 'Sprint'). Requerido para el método 'create_iteration_field'. (cadena, opcional)
    • issue_number: El número de la incidencia. Requerido para 'add_project_item' cuando item_type es 'issue'. También aceptado por 'update_project_item' para resolver el elemento por número de incidencia (combinar con item_owner e item_repo). (número, opcional)
    • item_id: El ID del elemento del proyecto. Requerido para 'delete_project_item'. Para 'update_project_item', proporcione item_id, o (item_owner + item_repo + issue_number) para resolver el elemento por incidencia. (número, opcional)
    • item_owner: El propietario (usuario u organización) del repositorio que contiene la incidencia o pull request. Requerido para el método 'add_project_item'. También aceptado por 'update_project_item' al resolver el elemento por número de incidencia. (cadena, opcional)
    • item_repo: El nombre del repositorio que contiene la incidencia o pull request. Requerido para el método 'add_project_item'. También aceptado por 'update_project_item' al resolver el elemento por número de incidencia. (cadena, opcional)
    • item_type: El tipo del elemento, ya sea issue o pull_request. Requerido para el método 'add_project_item'. (cadena, opcional)
    • iteration_duration: Duración en días para las iteraciones del campo (ej. 7 para semanal, 14 para quincenal). Requerido para el método 'create_iteration_field'. (número, opcional)
    • iterations: Iteraciones personalizadas para el método 'create_iteration_field'. Establezca esto solo cuando necesite iteraciones con duraciones variables, pausas entre ellas o títulos específicos. De lo contrario, omítalo: GitHub crea automáticamente tres iteraciones de 'iteration_duration' días a partir de 'start_date', que es la opción correcta para la mayoría de los casos. (objeto[], opcional)
    • method: El método a ejecutar (cadena, requerido)
    • owner: El propietario del proyecto (usuario o nombre de organización). El nombre no distingue mayúsculas de minúsculas. (cadena, requerido)
    • owner_type: Tipo de propietario (user u org). Requerido para el método 'create_project'. Si no se proporciona para otros métodos, se detectará automáticamente. (cadena, opcional)
    • project_number: El número del proyecto. Requerido para todos los métodos excepto 'create_project'. (número, opcional)
    • pull_request_number: El número de la pull request (úselo cuando item_type sea 'pull_request' para el método 'add_project_item'). Proporcione issue_number o pull_request_number. (número, opcional)
    • start_date: Fecha de inicio en formato AAAA-MM-DD. Se usa para los métodos 'create_project_status_update' y 'create_iteration_field'. (cadena, opcional)
    • status: El estado del proyecto. Se usa para el método 'create_project_status_update'. (cadena, opcional)
    • target_date: La fecha objetivo de la actualización de estado en formato AAAA-MM-DD. Se usa para el método 'create_project_status_update'. (cadena, opcional)
    • title: El título del proyecto. Requerido para el método 'create_project'. (cadena, opcional)
    • updated_field: Objeto que describe el campo a actualizar y su nuevo valor. Requerido para 'update_project_item'. Se aceptan dos formas: (1) por ID — {"id": 123456, "value": "..."}; (2) por nombre — {"name": "Status", "value": "In Progress"}. Para campos de selección única, la resolución del nombre de opción requiere la forma por nombre; en la forma por ID, pase el ID de la opción. Establezca value a null para limpiar el campo. (objeto, opcional)
git-pull-request Pull Requests
  • add_comment_to_pending_review - Agregar comentario de revisión a la última revisión de pull request pendiente del solicitante

    • Ámbitos de OAuth requeridos: repo
    • body: El texto del comentario de revisión (cadena, requerido)
    • line: La línea del blob en el diff de la pull request a la que se aplica el comentario. Para comentarios de varias líneas, la última línea del rango (número, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • path: La ruta relativa al archivo que necesita un comentario (cadena, requerido)
    • pullNumber: Número de pull request (número, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • side: El lado del diff en el que comentar. LEFT indica el estado anterior, RIGHT indica el nuevo estado (cadena, opcional)
    • startLine: Para comentarios de varias líneas, la primera línea del rango al que se aplica el comentario (número, opcional)
    • startSide: Para comentarios de varias líneas, el lado inicial del diff al que se aplica el comentario. LEFT indica el estado anterior, RIGHT indica el nuevo estado (cadena, opcional)
    • subjectType: El nivel al que se dirige el comentario (cadena, requerido)
  • add_reply_to_pull_request_comment - Agregar respuesta a comentario de pull request

    • Ámbitos de OAuth requeridos: repo
    • body: El texto de la respuesta. Requerido a menos que se proporcione reacción. (cadena, opcional)
    • commentId: El ID numérico del comentario de revisión de pull request a responder o reaccionar. Use el número de un ancla #discussion_r..., no el ID de nodo de hilo GraphQL (PRRT_...). (número, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • pullNumber: Número de pull request. Requerido cuando se proporciona cuerpo. (número, opcional)
    • reaction: Reacción emoji a agregar. Requerido a menos que se proporcione cuerpo. (cadena, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
  • create_pull_request - Abrir nueva pull request

    • Ámbitos de OAuth requeridos: repo
    • base: Rama en la que fusionar (cadena, requerido)
    • body: Descripción de la PR (cadena, opcional)
    • draft: Crear como PR borrador (booleano, opcional)
    • head: Rama que contiene los cambios (cadena, requerido)
    • maintainer_can_modify: Permitir ediciones del mantenedor (booleano, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • reviewers: Nombres de usuario de GitHub o revisores de equipo ORG/team-slug para solicitar revisiones (cadena[], opcional)
    • title: Título de la PR (cadena, requerido)
  • list_pull_requests - Listar pull requests

    • Ámbitos de OAuth requeridos: repo
    • base: Filtrar por rama base (cadena, opcional)
    • direction: Dirección de ordenación (cadena, opcional)
    • head: Filtrar por usuario/org de cabeza y rama (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
    • sort: Ordenar por (cadena, opcional)
    • state: Filtrar por estado (cadena, opcional)
  • merge_pull_request - Fusionar pull request

    • Ámbitos de OAuth requeridos: repo
    • commit_message: Detalle extra para el commit de fusión (cadena, opcional)
    • commit_title: Título para el commit de fusión (cadena, opcional)
    • merge_method: Método de fusión (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • pullNumber: Número de pull request (número, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • pull_request_read - Obtener detalles de una única solicitud de extracción

    • Ámbitos de OAuth requeridos: repo
    • after: Cursor para paginación, usado solo por el método get_review_comments. Pasa el endCursor del PageInfo de la página anterior para obtener la siguiente página. (cadena, opcional)
    • method: Acción para especificar qué datos de la solicitud de extracción se deben recuperar de GitHub. Opciones posibles:
      1. get - Obtener detalles de una solicitud de extracción específica.
      2. get_diff - Obtener el diff de una solicitud de extracción.
      3. get_status - Obtener el estado combinado de los commits de la cabeza en una solicitud de extracción.
      4. get_files - Obtener la lista de archivos modificados en una solicitud de extracción. Usar con parámetros de paginación para controlar el número de resultados devueltos.
      5. get_commits - Obtener la lista de commits en una solicitud de extracción. Usar con parámetros de paginación para controlar el número de resultados devueltos.
      6. get_review_comments - Obtener hilos de revisión en una solicitud de extracción. Cada hilo contiene comentarios de revisión agrupados lógicamente hechos en la misma ubicación de código durante las revisiones de la solicitud de extracción. Devuelve hilos con metadatos (isResolved, isOutdated, isCollapsed) y sus comentarios asociados. Usa paginación basada en cursor (perPage, after) para controlar los resultados.
      7. get_reviews - Obtener las revisiones de una solicitud de extracción. Cuando se pidan comentarios de revisión, usa el método get_review_comments. Usar con parámetros de paginación para controlar el número de resultados devueltos.
      8. get_comments - Obtener comentarios en una solicitud de extracción. Usa esto si el usuario no quiere específicamente comentarios de revisión. Usar con parámetros de paginación para controlar el número de resultados devueltos.
      9. get_check_runs - Obtener ejecuciones de verificación para el commit de cabeza de una solicitud de extracción. Las ejecuciones de verificación son los trabajos y comprobaciones individuales de CI/CD que se ejecutan en la PR. (cadena, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • pullNumber: Número de solicitud de extracción (número, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • pull_request_review_write - Operaciones de escritura (crear, enviar, eliminar) en revisiones de solicitudes de extracción

    • Ámbitos de OAuth requeridos: repo
    • body: Texto del comentario de revisión (cadena, opcional)
    • commitID: SHA del commit a revisar (cadena, opcional)
    • event: Acción de revisión a realizar. (cadena, opcional)
    • method: La operación de escritura a realizar en la revisión de la solicitud de extracción. (cadena, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • pullNumber: Número de solicitud de extracción (número, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • threadId: El ID de nodo del hilo de revisión (ej., PRRT_kwDOxxx). Requerido para los métodos resolve_thread y unresolve_thread. Obtén los IDs de hilo de pull_request_read con el método get_review_comments. (cadena, opcional)
  • search_pull_requests - Buscar solicitudes de extracción

    • Ámbitos de OAuth requeridos: repo
    • order: Orden de clasificación (cadena, opcional)
    • owner: Propietario del repositorio opcional. Si se proporciona con repo, solo se listan las solicitudes de extracción de este repositorio. (cadena, opcional)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • query: Consulta de búsqueda usando la sintaxis de búsqueda de solicitudes de extracción de GitHub (cadena, requerido)
    • repo: Nombre del repositorio opcional. Si se proporciona con owner, solo se listan las solicitudes de extracción de este repositorio. (cadena, opcional)
    • sort: Campo de ordenación por número de coincidencias de categorías, por defecto mejor coincidencia (cadena, opcional)
  • update_pull_request - Editar solicitud de extracción

    • Ámbitos de OAuth requeridos: repo
    • base: Nuevo nombre de rama base (cadena, opcional)
    • body: Nueva descripción (cadena, opcional)
    • draft: Marcar solicitud de extracción como borrador (true) o lista para revisión (false) (booleano, opcional)
    • maintainer_can_modify: Permitir ediciones de mantenedores (booleano, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • pullNumber: Número de solicitud de extracción a actualizar (número, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • reviewers: Nombres de usuario de GitHub o revisores de equipo ORG/team-slug para solicitar revisiones (cadena[], opcional)
    • state: Nuevo estado (cadena, opcional)
    • title: Nuevo título (cadena, opcional)
  • update_pull_request_branch - Actualizar rama de solicitud de extracción

    • Ámbitos de OAuth requeridos: repo
    • expectedHeadSha: El SHA esperado de la referencia HEAD de la solicitud de extracción (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • pullNumber: Número de solicitud de extracción (número, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
repo Repositorios
  • create_branch - Crear rama

    • Ámbitos de OAuth requeridos: repo
    • branch: Nombre para la nueva rama (cadena, requerido)
    • from_branch: Rama de origen (por defecto la rama predeterminada del repositorio) (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • create_or_update_file - Crear o actualizar archivo

    • Ámbitos de OAuth requeridos: repo
    • branch: Rama donde crear/actualizar el archivo (cadena, requerido)
    • content: Contenido del archivo (cadena, requerido)
    • message: Mensaje de commit (cadena, requerido)
    • owner: Propietario del repositorio (nombre de usuario u organización) (cadena, requerido)
    • path: Ruta donde crear/actualizar el archivo (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • sha: El SHA del blob del archivo que se está reemplazando. Requerido si el archivo ya existe. (cadena, opcional)
  • create_repository - Crear repositorio

    • Ámbitos de OAuth requeridos: repo
    • autoInit: Inicializar con README (booleano, opcional)
    • description: Descripción del repositorio (cadena, opcional)
    • name: Nombre del repositorio (cadena, requerido)
    • organization: Organización en la que crear el repositorio (omitir para crear en tu cuenta personal) (cadena, opcional)
    • private: Si el repositorio debe ser privado. Por defecto true (privado) cuando se omite. (booleano, opcional)
  • delete_file - Eliminar archivo

    • Ámbitos de OAuth requeridos: repo
    • branch: Rama de la que eliminar el archivo (cadena, requerido)
    • message: Mensaje de commit (cadena, requerido)
    • owner: Propietario del repositorio (nombre de usuario u organización) (cadena, requerido)
    • path: Ruta al archivo a eliminar (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • fork_repository - Bifurcar repositorio

    • Ámbitos de OAuth requeridos: repo
    • organization: Organización a la que bifurcar (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • get_commit - Obtener detalles del commit

    • Ámbitos de OAuth requeridos: repo
    • detail: Nivel de detalle a incluir para los archivos modificados. "none" omite estadísticas y archivos por completo. "stats" (predeterminado) incluye metadatos por archivo: nombre de archivo, estado y recuentos de líneas de código (adiciones, eliminaciones, cambios), sin contenido de parche. "full_patch" incluye adicionalmente el contenido de diff unificado para cada archivo y puede ser muy grande. (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
    • sha: SHA del commit, nombre de rama o nombre de etiqueta (cadena, requerido)
  • get_file_contents - Obtener contenido de archivo o directorio

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (nombre de usuario u organización) (cadena, requerido)
    • path: Ruta al archivo/directorio (cadena, opcional)
    • ref: Acepta referencias git opcionales como refs/tags/{tag}, refs/heads/{branch} o refs/pull/{pr_number}/head (cadena, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
    • sha: Acepta SHA de commit opcional. Si se especifica, se usará en lugar de ref (cadena, opcional)
  • get_latest_release - Obtener última versión

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • get_release_by_tag - Obtener una versión por nombre de etiqueta

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • tag: Nombre de etiqueta (ej., 'v1.0.0') (cadena, requerido)
  • get_tag - Obtener detalles de etiqueta

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
    • tag: Nombre de etiqueta (cadena, requerido)
  • list_branches - Listar ramas

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
  • list_commits - Listar commits

    • Ámbitos de OAuth requeridos: repo
    • author: Nombre de usuario o correo electrónico del autor para filtrar commits (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • path: Solo se devolverán los commits que contengan esta ruta de archivo (cadena, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
    • sha: SHA de commit, rama o nombre de etiqueta para listar commits. Si no se proporciona, usa la rama predeterminada del repositorio. Si se proporciona un SHA de commit, listará los commits hasta ese SHA. (cadena, opcional)
    • since: Solo se devolverán los commits posteriores a esta fecha (formato ISO 8601: YYYY-MM-DDTHH:MM:SSZ o YYYY-MM-DD) (cadena, opcional)
    • until: Solo se devolverán los commits anteriores a esta fecha (formato ISO 8601: YYYY-MM-DDTHH:MM:SSZ o YYYY-MM-DD) (cadena, opcional)
  • list_releases - Listar versiones

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
  • list_repository_collaborators - Listar colaboradores del repositorio

    • Ámbitos de OAuth requeridos: repo
    • affiliation: Filtrar por afiliación. Puede ser uno de: 'outside' (colaboradores externos), 'direct' (todos con permisos independientemente de la membresía en la organización), 'all' (todos los colaboradores). Predeterminado: 'all' (cadena, opcional)
    • owner: Propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (predeterminado 1, mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (predeterminado 30, mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
  • list_tags - Listar etiquetas

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: Nombre del repositorio (cadena, requerido)
  • push_files - Subir archivos al repositorio

    • Ámbitos de OAuth requeridos: repo
    • branch: Rama a la que subir (cadena, requerido)
    • files: Arreglo de objetos de archivo a subir, cada objeto con ruta (cadena) y contenido (cadena) (objeto[], requerido)
    • message: Mensaje de commit (cadena, requerido)
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • search_code - Buscar código

    • Ámbitos de OAuth requeridos: repo
    • order: Orden de clasificación para los resultados (cadena, opcional)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • query: Consulta de búsqueda (API REST de búsqueda de código de GitHub). AND implícito entre términos; admite OR, NOT y "quoted phrase" para coincidencia exacta. Calificadores: repo:owner/repo, org:, user:, language:, path:dir (coincidencia de prefijo), filename:exact.ext, extension:, in:file, in:path, size:, is:archived, is:fork. Máx 256 caracteres. Ejemplos: WithContext language:go org:github; "package main" repo:o/r; func extension:go path:cmd repo:o/r; NOT TODO language:go repo:o/r. (cadena, requerido)
    • sort: Campo de ordenación (solo 'indexed') (cadena, opcional)
  • search_commits - Buscar commits

    • Ámbitos de OAuth requeridos: repo
    • order: Orden de clasificación (cadena, opcional)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • query: Consulta de búsqueda de commits (API REST de búsqueda de commits de GitHub). Busca mensajes de commit solo en la rama predeterminada. Acota la búsqueda con repo:owner/repo, org: o user: (las consultas sin un calificador de ámbito coinciden en todo GitHub y generalmente no son lo que deseas). Otros calificadores: author:, committer:, author-name:, committer-name:, author-email:, committer-email:, author-date:, committer-date: (admite rangos >, <, >=, <= y YYYY-MM-DD..YYYY-MM-DD), merge:true|false, hash:, tree:, parent:, is:public. Ejemplos: repo:owner/repo fix panic; org:github author:defunkt committer-date:>=2024-01-01; "refactor cache" repo:o/r; hash:abc1234 repo:o/r. (cadena, requerido)
    • sort: Ordenar por fecha del autor o del committer (por defecto, mejor coincidencia) (cadena, opcional)
  • search_repositories - Buscar repositorios

    • Ámbitos de OAuth requeridos: repo
    • minimal_output: Devolver información mínima del repositorio (predeterminado: true). Cuando es false, devuelve objetos completos de repositorio de la API de GitHub. (booleano, opcional)
    • order: Orden de clasificación (cadena, opcional)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • query: Consulta de búsqueda de repositorios. Ejemplos: 'machine learning in:name stars:>1000 language:python', 'topic:react', 'user:facebook'. Admite sintaxis de búsqueda avanzada para filtrado preciso. (cadena, requerido)
    • sort: Ordenar repositorios por campo, por defecto mejor coincidencia (cadena, opcional)
shield-lock Protección de Secretos
  • get_secret_scanning_alert - Obtener alerta de escaneo de secretos

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • alertNumber: El número de la alerta. (número, requerido)
    • owner: El propietario del repositorio. (cadena, requerido)
    • repo: El nombre del repositorio. (cadena, requerido)
  • list_secret_scanning_alerts - Listar alertas de escaneo de secretos

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • owner: El propietario del repositorio. (cadena, requerido)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • repo: El nombre del repositorio. (cadena, requerido)
    • resolution: Filtrar por resolución (cadena, opcional)
    • secret_type: Una lista separada por comas de tipos de secretos a devolver. Se devuelven todos los patrones de secretos predeterminados. Para devolver patrones genéricos, pasa el/los nombre(s) del token en el parámetro. (cadena, opcional)
    • state: Filtrar por estado (cadena, opcional)
shield Avisos de Seguridad
  • get_global_security_advisory - Obtener un aviso de seguridad global

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • ghsaId: ID del Aviso de Seguridad de GitHub (formato: GHSA-xxxx-xxxx-xxxx). (cadena, requerido)
  • list_global_security_advisories - Listar avisos de seguridad globales

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • affects: Filtrar avisos por paquete o versión afectados (ej. "paquete1,paquete2@1.0.0"). (cadena, opcional)
    • cveId: Filtrar por ID de CVE. (cadena, opcional)
    • cwes: Filtrar por IDs de Enumeración de Debilidades Comunes (ej. ["79", "284", "22"]). (cadena[], opcional)
    • ecosystem: Filtrar por ecosistema de paquete. (cadena, opcional)
    • ghsaId: Filtrar por ID del Aviso de Seguridad de GitHub (formato: GHSA-xxxx-xxxx-xxxx). (cadena, opcional)
    • isWithdrawn: Si solo se deben devolver avisos retirados. (booleano, opcional)
    • modified: Filtrar por fecha de publicación o actualización o rango de fechas (fecha ISO 8601 o rango). (cadena, opcional)
    • published: Filtrar por fecha de publicación o rango de fechas (fecha ISO 8601 o rango). (cadena, opcional)
    • severity: Filtrar por severidad. (cadena, opcional)
    • type: Tipo de aviso. (cadena, opcional)
    • updated: Filtrar por fecha de actualización o rango de fechas (fecha ISO 8601 o rango). (cadena, opcional)
  • list_org_repository_security_advisories - Listar avisos de seguridad de repositorios de la organización

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • direction: Dirección de ordenación. (cadena, opcional)
    • org: El login de la organización. (cadena, requerido)
    • sort: Campo de ordenación. (cadena, opcional)
    • state: Filtrar por estado del aviso. (cadena, opcional)
  • list_repository_security_advisories - Listar avisos de seguridad del repositorio

    • Ámbitos de OAuth requeridos: security_events
    • Ámbitos de OAuth aceptados: repo, security_events
    • direction: Dirección de ordenación. (cadena, opcional)
    • owner: El propietario del repositorio. (cadena, requerido)
    • repo: El nombre del repositorio. (cadena, requerido)
    • sort: Campo de ordenación. (cadena, opcional)
    • state: Filtrar por estado del aviso. (cadena, opcional)
star Stargazers
  • list_starred_repositories - Listar repositorios con estrellas

    • Ámbitos de OAuth requeridos: repo
    • direction: La dirección para ordenar los resultados. (cadena, opcional)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • sort: Cómo ordenar los resultados. Puede ser 'created' (cuándo se marcó el repositorio con estrella) o 'updated' (cuándo fue el último push al repositorio). (cadena, opcional)
    • username: Nombre de usuario para listar sus repositorios con estrellas. Por defecto, el usuario autenticado. (cadena, opcional)
  • star_repository - Marcar repositorio con estrella

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
  • unstar_repository - Quitar estrella a repositorio

    • Ámbitos de OAuth requeridos: repo
    • owner: Propietario del repositorio (cadena, requerido)
    • repo: Nombre del repositorio (cadena, requerido)
people Usuarios
  • search_users - Buscar usuarios
    • Ámbitos de OAuth requeridos: repo
    • order: Orden de clasificación (cadena, opcional)
    • page: Número de página para paginación (mín 1) (número, opcional)
    • perPage: Resultados por página para paginación (mín 1, máx 100) (número, opcional)
    • query: Consulta de búsqueda de usuarios. Ejemplos: 'john smith', 'location:seattle', 'followers:>100'. La búsqueda se limita automáticamente a type:user. (cadena, requerido)
    • sort: Ordenar usuarios por número de seguidores o repositorios, o por cuándo se unieron a GitHub. (cadena, opcional)

Herramientas Adicionales en el Servidor MCP Remoto de GitHub

Copilot
  • create_pull_request_with_copilot - Realizar tarea con el agente de codificación de GitHub Copilot
    • owner: Propietario del repositorio. Puedes adivinar el propietario, pero confírmalo con el usuario antes de proceder. (cadena, requerido)
    • repo: Nombre del repositorio. Puedes adivinar el nombre del repositorio, pero confírmalo con el usuario antes de proceder. (cadena, requerido)
    • problem_statement: Descripción detallada de la tarea a realizar (ej., 'Implementar una funcionalidad que haga X', 'Corregir bug Y', etc.) (cadena, requerido)
    • title: Título para la pull request que se creará (cadena, requerido)
    • base_ref: Referencia de Git (ej., rama) desde la que el agente comenzará su trabajo. Si no se especifica, se usa la rama predeterminada del repositorio (cadena, opcional)
Copilot Spaces
  • Nota de autenticación

    • Los PAT de grano fino no se ocultan mediante el filtrado de ámbito de los PAT clásicos, por lo que estas herramientas pueden seguir apareciendo incluso cuando el token no puede usarlas.
    • Para espacios propiedad de una organización, los PAT de grano fino deben instalarse en la organización propietaria e incluir organization_copilot_spaces: read.
    • Si un espacio propiedad de una organización contiene recursos respaldados por repositorios, el token también debe tener acceso a cada repositorio referenciado o el espacio podría tratarse como no encontrado.
  • get_copilot_space - Obtener Espacio de Copilot

    • owner: El propietario del espacio. (cadena, requerido)
    • name: El nombre del espacio. (cadena, requerido)
  • list_copilot_spaces - Listar Espacios de Copilot

Búsqueda en Documentos de Soporte de GitHub - **github_support_docs_search** - Recupera documentación relevante para responder preguntas sobre productos y soporte de GitHub. Los temas de soporte incluyen: Flujos de trabajo de GitHub Actions, Autenticación, Consultas de soporte de GitHub, Prácticas de Pull Request, Mantenimiento de repositorios, GitHub Pages, GitHub Packages, GitHub Discussions, Copilot Spaces - `query`: Entrada del usuario sobre la pregunta que necesita responder. Este es el último mensaje del usuario sin editar. SIEMPRE debes dejar el mensaje del usuario tal como está, nunca debes modificarlo. (cadena, obligatorio)

Modo de solo lectura

Para ejecutar el servidor en modo de solo lectura, puedes usar la bandera --read-only. Esto solo ofrecerá herramientas de solo lectura, evitando cualquier modificación en repositorios, issues, pull requests, etc.

./github-mcp-server --read-only

Al usar Docker, puedes pasar el modo de solo lectura como una variable de entorno:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_READ_ONLY=1 \
  ghcr.io/github/github-mcp-server

Modo de bloqueo

El modo de bloqueo limita el contenido que el servidor mostrará de repositorios públicos. Cuando está habilitado, el servidor verifica si el autor de cada elemento tiene acceso de escritura al repositorio. Los repositorios privados no se ven afectados y los colaboradores mantienen acceso completo a su propio contenido.

./github-mcp-server --lockdown-mode

Al ejecutar con Docker, establece la variable de entorno correspondiente:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_LOCKDOWN_MODE=1 \
  ghcr.io/github/github-mcp-server

El comportamiento del modo de bloqueo depende de la herramienta invocada.

Las siguientes herramientas devolverán un error cuando el autor carezca de acceso de escritura:

  • issue_read:get
  • pull_request_read:get

Las siguientes herramientas filtrarán el contenido de usuarios que carezcan de acceso de escritura:

  • issue_read:get_comments
  • issue_read:get_sub_issues
  • pull_request_read:get_comments
  • pull_request_read:get_review_comments
  • pull_request_read:get_reviews

i18n / Sobrescribir descripciones

Las descripciones de las herramientas se pueden sobrescribir creando un archivo github-mcp-server-config.json en el mismo directorio que el binario.

El archivo debe contener un objeto JSON con los nombres de las herramientas como claves y las nuevas descripciones como valores. Por ejemplo:

{
  "TOOL_ADD_ISSUE_COMMENT_DESCRIPTION": "an alternative description",
  "TOOL_CREATE_BRANCH_DESCRIPTION": "Create a new branch in a GitHub repository"
}

Puedes crear una exportación de las traducciones actuales ejecutando el binario con la bandera --export-translations.

Esta bandera preservará cualquier traducción/sobrescritura que hayas realizado, mientras agrega cualquier traducción nueva que se haya añadido al binario desde la última vez que exportaste.

./github-mcp-server --export-translations
cat github-mcp-server-config.json

También puedes usar variables de entorno para sobrescribir las descripciones. Los nombres de las variables de entorno son los mismos que las claves en el archivo JSON, con el prefijo GITHUB_MCP_ y todo en mayúsculas.

Por ejemplo, para sobrescribir la herramienta TOOL_ADD_ISSUE_COMMENT_DESCRIPTION, puedes establecer la siguiente variable de entorno:

export GITHUB_MCP_TOOL_ADD_ISSUE_COMMENT_DESCRIPTION="an alternative description"

Sobrescribir nombre y título del servidor

El mismo mecanismo de sobrescritura se puede usar para personalizar los campos name y title del servidor MCP en la respuesta de inicialización. Esto es útil al ejecutar múltiples instancias del Servidor MCP de GitHub (por ejemplo, una para github.com y otra para GitHub Enterprise Server) para que los agentes puedan distinguirlas.

ClaveVariable de entornoValor predeterminado
SERVER_NAMEGITHUB_MCP_SERVER_NAMEgithub-mcp-server
SERVER_TITLEGITHUB_MCP_SERVER_TITLEGitHub MCP Server

Por ejemplo, para configurar una instancia de servidor para GitHub Enterprise Server:

{
  "SERVER_NAME": "ghes-mcp-server",
  "SERVER_TITLE": "GHES MCP Server"
}

O usando variables de entorno:

export GITHUB_MCP_SERVER_NAME="ghes-mcp-server"
export GITHUB_MCP_SERVER_TITLE="GHES MCP Server"

Uso como biblioteca

La API Go exportada de este módulo debe considerarse actualmente inestable y sujeta a cambios disruptivos. En el futuro, podríamos ofrecer estabilidad; por favor, abre un issue si hay un caso de uso donde esto sería valioso.

Contribuciones

Las contribuciones son bienvenidas. Antes de abrir un pull request, lee la guía de contribución para obtener instrucciones sobre configuración, pruebas, linting y generación de documentación.

Soporte

Para obtener ayuda sobre el uso del Servidor MCP de GitHub, consulta la guía de soporte. Si has encontrado un error o deseas solicitar una función, por favor busca en los issues existentes antes de abrir uno nuevo.

Seguridad

Por favor, no reportes vulnerabilidades de seguridad a través de issues públicos. Sigue las instrucciones en la política de seguridad para reportar vulnerabilidades de manera responsable.

Licencia

Este proyecto está licenciado bajo los términos de la licencia de código abierto MIT. Consulta MIT para los términos completos.