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.
Exploración de repositorios — Pídele a tu asistente que navegue por repositorios, busque archivos y comprenda la estructura del proyecto utilizando herramientas como get_file_contents.
Gestión de issues y PR — Haz que tu IA cree, actualice y clasifique issues y pull requests, incluyendo la revisión de cambios de código y el mantenimiento de tableros de proyecto.
Monitoreo de CI/CD — Obtén información sobre las ejecuciones de flujos de trabajo de GitHub Actions, analiza fallos de compilación y gestiona lanzamientos mediante consultas en lenguaje natural.
Análisis de seguridad del código — Examina hallazgos de seguridad, revisa alertas de Dependabot y comprende patrones de código en todo tu repositorio.
Colaboración en equipo — Accede a discusiones, gestiona notificaciones y analiza la actividad del equipo para optimizar los procesos de desarrollo.
Documentación
Servidor GitHub MCP
El Servidor GitHub MCP conecta herramientas de IA directamente con la plataforma de GitHub. Esto brinda a agentes de IA, asistentes y chatbots la capacidad de leer repositorios y archivos de código, gestionar issues y PRs, analizar código y automatizar flujos de trabajo. Todo a través de interacciones en lenguaje natural.
Casos de uso
Gestión de repositorios: Explora y consulta código, busca archivos, analiza commits y comprende la estructura del proyecto en cualquier repositorio al que tengas acceso.
Automatización de issues y PRs: Crea, actualiza y gestiona issues y pull requests. Permite que la IA ayude a clasificar errores, revisar cambios de código y mantener tableros de proyecto.
Inteligencia de CI/CD y flujos de trabajo: Monitorea ejecuciones de flujos de trabajo 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 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 consultas simples en lenguaje natural hasta flujos de trabajo complejos de agentes multi-paso.
Servidor GitHub MCP remoto
El Servidor GitHub MCP remoto está alojado por GitHub y proporciona el método más sencillo para ponerse en marcha. Si tu host MCP no admite servidores MCP remotos, ¡no te preocupes! Puedes usar la versión local del Servidor GitHub MCP en su lugar.
Requisitos previos
Un host MCP compatible con soporte para servidores remotos (VS Code 1.101+, Claude Desktop, Cursor, Windsurf, etc.)
Para una instalación rápida, usa uno de los botones de instalación con un clic de arriba. Una vez que completes ese flujo, activa el modo Agente (ubicado junto al campo de texto de Copilot Chat) y el servidor se iniciará. Asegúrate de usar 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 tu configuración de host:
Rovo Dev CLI - Guía de instalación para Rovo Dev CLI
Nota: Cada aplicación host MCP necesita configurar una GitHub App o OAuth App para admitir acceso remoto mediante OAuth. Cualquier aplicación host que admita servidores MCP remotos debería admitir 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 obtener más información.
Configuración
Configuración de conjuntos de herramientas
Consulta la Documentación del servidor remoto para obtener detalles completos sobre la configuración del servidor remoto, conjuntos de herramientas, encabezados y uso avanzado. Este archivo proporciona instrucciones y ejemplos completos para conectar, personalizar e instalar el Servidor GitHub MCP remoto en VS Code y otros hosts MCP.
¡Prueba nuevas funciones antes que nadie! El servidor remoto ofrece una versión insiders con acceso anticipado a nuevas funciones y herramientas experimentales.
Nota: Al usar OAuth con GitHub Enterprise en VS Code y GitHub Copilot, también debes configurar los ajustes de VS Code para apuntar a tu instancia de GitHub Enterprise; consulta Autenticación desde VS Code
Para ejecutar el servidor en un contenedor, necesitarás tener Docker instalado.
Una vez que Docker esté instalado, también deberá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 recibes errores al extraerla, es posible que tengas un token caducado y necesites docker logout ghcr.io.
Autenticación. En github.com no necesitas crear nada de antemano: los botones de un clic de arriba te inician sesión 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 devolución de llamada fijo (127.0.0.1:8085) para que la devolución de llamada 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 usar tu propio 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 API de GitHub, así que habilita los permisos que te sientas cómodo otorgando a tus herramientas de IA (para obtener más información sobre 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:
Guarda tu PAT en variables de entorno
export GITHUB_PAT=your_token_here
O crea un archivo .env:
GITHUB_PAT=your_token_here
Protege tu archivo .env
# Add to .gitignore to prevent accidental commits
echo ".env" >> .gitignore
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 de 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 de tokens
Ámbitos mínimos: Solo otorga los permisos necesarios
repo - Operaciones de repositorio
read:packages - Acceso a imágenes de Docker
read:org - Acceso a equipos de organización
Tokens separados: Usa diferentes PATs para diferentes proyectos/entornos
Rotación regular: Actualiza los tokens periódicamente
Nunca los confirmes: Mantén los tokens fuera del control de versiones
Permisos de archivo: Restringe el acceso a archivos de configuración que contengan 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 configurar
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 de URI https://. HTTPS es obligatorio y se aplica: los hosts que no usan HTTPS son rechazados para que las credenciales nunca se envíen en texto claro (la única excepción es un host de bucle local como http://localhost para desarrollo local).
Para GitHub Enterprise Cloud con residencia de datos, usa https://YOURSUBDOMAIN.ghe.com como nombre de host.
Para una instalación rápida, usa uno de los botones de instalación con un clic de arriba. Una vez que completes ese flujo, activa el modo Agente (ubicado junto al campo de texto de Copilot Chat) y el servidor se iniciará.
Instalación 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 aplicación, por lo que no necesitas proporcionar 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 requiere un puerto de devolución de llamada fijo publicado en bucle local para que la devolución de llamada de inicio de sesión del contenedor sea accesible:
Consulta Inicio de sesión OAuth del servidor local para el flujo con 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 usar tu propio OAuth o GitHub App.
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.
Para una descripción general completa de todas las opciones de instalación, consulta nuestro Índice de guías de instalación.
Nota: Cualquier aplicación host que admita servidores MCP locales debería poder acceder al servidor local de GitHub MCP. 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. Consulte la documentación de su aplicación host para conocer la sintaxis de configuración de MCP y el proceso de configuración correctos.
Compilar desde el código fuente
Si no tiene Docker, puede 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 su token. Para especificar la ubicación de salida de la compilación, use la bandera -o. Debe configurar su servidor para que use el ejecutable compilado como su command. Por ejemplo:
El servidor de GitHub MCP admite habilitar o deshabilitar grupos específicos de funcionalidades mediante la bandera --toolsets. Esto le permite controlar qué capacidades de la API de GitHub están disponibles para sus herramientas de IA. Habilitar solo los conjuntos de herramientas que necesita puede ayudar al LLM con la selección de herramientas y reducir el tamaño del contexto.
Los conjuntos de herramientas no se limitan a herramientas. Los Recursos y Prompts de MCP relevantes también se incluyen cuando corresponde.
¿Busca ejemplos? Consulte la Guía de configuración del servidor para ver recetas comunes como configuraciones mínimas, modo de solo lectura y combinación de herramientas con conjuntos de herramientas.
Especificación de conjuntos de herramientas
Para especificar los conjuntos de herramientas que desea que estén disponibles para el LLM, puede pasar una lista de permitidos de dos maneras:
La variable de entorno GITHUB_TOOLSETS tiene prioridad sobre el argumento de línea de comandos si ambos se proporcionan.
Especificación de herramientas individuales
También puede 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.
Esto registra todas las herramientas de los conjuntos de herramientas 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 mediante --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 herramientas, los nombres antiguos se conservan como alias para compatibilidad con versiones anteriores. Consulte Renombrado de herramientas para obtener más detalles.
Uso de conjuntos de herramientas con Docker
Cuando use Docker, puede pasar los conjuntos de herramientas como variables de entorno:
Cuando use Docker, puede pasar herramientas específicas como variables de entorno. También puede 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:
Los siguientes conjuntos de herramientas están disponibles:
Conjunto de herramientas
Descripción
context
Muy recomendado: Herramientas que proporcionan contexto sobre el usuario actual y el contexto de GitHub en el que está operando
actions
Flujos de trabajo de GitHub Actions y operaciones de CI/CD
code_quality
Herramientas relacionadas con la calidad del código de GitHub
code_security
Herramientas relacionadas con la seguridad del código, como GitHub Code Scanning
copilot
Herramientas relacionadas con Copilot
copilot_issue_intents
Herramientas de asignación de problemas de Copilot opcionales que llevan metadatos de intención (justificación, confianza, sugerencia)
dependabot
Herramientas de Dependabot
discussions
Herramientas relacionadas con GitHub Discussions
gists
Herramientas relacionadas con GitHub Gist
git
Herramientas relacionadas con la API de Git de GitHub para operaciones de Git de bajo nivel
issues
Herramientas relacionadas con GitHub Issues
labels
Herramientas relacionadas con GitHub Labels
notifications
Herramientas relacionadas con GitHub Notifications
orgs
Herramientas relacionadas con GitHub Organization
projects
Herramientas relacionadas con GitHub Projects
pull_requests
Herramientas relacionadas con GitHub Pull Request
repos
Herramientas relacionadas con GitHub Repository
secret_protection
Herramientas relacionadas con la protección de secretos, como GitHub Secret Scanning
security_advisories
Herramientas relacionadas con avisos de seguridad
stargazers
Herramientas relacionadas con GitHub Stargazers
users
Herramientas relacionadas con GitHub User
Conjuntos de herramientas adicionales en el servidor remoto de GitHub MCP
Conjunto de herramientas
Descripción
copilot
Herramientas relacionadas con Copilot (por ejemplo, Copilot Coding Agent)
copilot_spaces
Herramientas relacionadas con Copilot Spaces
github_support_docs_search
Buscar documentación para responder preguntas sobre productos y soporte de GitHub
Herramientas
Actions
actions_get - Obtener detalles de los recursos de GitHub Actions (flujos de trabajo, ejecuciones de flujos de trabajo, trabajos y artefactos)
Ámbitos de desafío OAuth: repo
method: El método a ejecutar (cadena, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
resource_id: El identificador único del recurso. Esto variará según el "método" proporcionado, así que asegúrese de proporcionar el ID correcto:
Proporcione un ID de flujo de trabajo o un nombre de archivo de flujo de trabajo (por ejemplo, ci.yaml) para el método 'get_workflow'.
Proporcione 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'.
Proporcione un ID de artefacto para el método 'download_workflow_run_artifact'.
Proporcione un ID de trabajo para el método 'get_workflow_job'.
(cadena, obligatorio)
actions_list - Listar flujos de trabajo de GitHub Actions en un repositorio
Ámbitos de desafío OAuth: repo
method: La acción a realizar (cadena, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
page: Número de página para la paginación (predeterminado: 1) (número, opcional)
per_page: Resultados por página para la paginación (predeterminado: 30, máximo: 100) (número, opcional)
repo: Nombre del repositorio (cadena, obligatorio)
resource_id: El identificador único del recurso. Esto variará según el "método" proporcionado, así que asegúrese de proporcionar el ID correcto:
No proporcione ningún ID de recurso para el método 'list_workflows'.
Proporcione un ID de flujo de trabajo o un nombre de archivo de flujo de trabajo (por ejemplo, ci.yaml) para el método 'list_workflow_runs', u omita para listar todas las ejecuciones de flujos de trabajo en el repositorio.
Proporcione 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 flujos de trabajo. SOLO se usa cuando el método es 'list_workflow_runs' (objeto, opcional)
actions_run_trigger - Activar acciones de flujos de trabajo de GitHub Actions
Ámbitos de desafío OAuth: 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, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
ref: La referencia de git para el flujo de trabajo. La referencia puede ser un nombre de rama o etiqueta. Obligatorio para el método 'run_workflow'. (cadena, opcional)
repo: Nombre del repositorio (cadena, obligatorio)
run_id: El ID de la ejecución del flujo de trabajo. Obligatorio para todos los métodos excepto 'run_workflow'. (número, opcional)
workflow_id: El ID del flujo de trabajo (numérico) o el nombre del archivo del flujo de trabajo (por ejemplo, main.yml, ci.yaml). Obligatorio para el método 'run_workflow'. (cadena, opcional)
get_job_logs - Obtener registros de trabajos de flujos de trabajo de GitHub Actions
Ámbitos de desafío OAuth: repo
failed_only: Cuando es verdadero, obtiene registros de 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. Obligatorio al obtener registros de un solo trabajo. (número, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
return_content: Devuelve el contenido real del registro en lugar de URL (booleano, opcional)
run_id: El identificador único de la ejecución del flujo de trabajo. Obligatorio cuando failed_only es verdadero 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)
Calidad del Código
get_code_quality_finding - Obtener hallazgo de calidad del código
Ámbitos de desafío OAuth: repo
findingNumber: El número del hallazgo. (número, obligatorio)
owner: El propietario del repositorio. (cadena, obligatorio)
repo: El nombre del repositorio. (cadena, obligatorio)
Seguridad del Código
get_code_scanning_alert - Obtener alerta de escaneo de código
Ámbitos de desafío OAuth: security_events
alertNumber: El número de la alerta. (número, obligatorio)
owner: El propietario del repositorio. (cadena, obligatorio)
repo: El nombre del repositorio. (cadena, obligatorio)
list_code_scanning_alerts - Listar alertas de escaneo de código
Ámbitos de desafío OAuth: security_events
owner: El propietario del repositorio. (cadena, obligatorio)
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, obligatorio)
severity: Filtrar alertas de escaneo de código por severidad (cadena, opcional)
state: Filtrar alertas de escaneo de código por estado. El valor predeterminado es abierto (cadena, opcional)
tool_name: El nombre de la herramienta utilizada para el escaneo de código. (cadena, opcional)
Contexto
get_me - Obtener mi perfil de usuario
No se requieren parámetros
get_team_members - Obtener miembros del equipo
Ámbitos de desafío OAuth: read:org
org: Inicio de sesión de la organización (propietario) que contiene el equipo. (cadena, obligatorio)
team_slug: Slug del equipo (cadena, obligatorio)
get_teams - Obtener equipos
Ámbitos de desafío OAuth: read:org
user: Nombre de usuario para obtener los equipos. Si no se proporciona, utiliza el usuario autenticado. (cadena, opcional)
Copilot
assign_copilot_to_issue - Asignar Copilot a un problema
Ámbitos de desafío OAuth: repo
base_ref: Referencia Git (p. ej., rama) desde la que el agente comenzará su trabajo. Si no se especifica, se utiliza la rama predeterminada del repositorio (cadena, opcional)
custom_instructions: Instrucciones personalizadas opcionales para guiar al agente más allá del cuerpo del problema. Úsalas para proporcionar contexto, restricciones u orientación adicionales que no estén capturados en la descripción del problema (cadena, opcional)
issue_number: Número del problema (número, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
request_copilot_review - Solicitar revisión de Copilot
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (cadena, obligatorio)
pullNumber: Número de la solicitud de extracción (número, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
Intenciones de Problemas de Copilot
assign_copilot_to_issue_with_intent - Asignar Copilot a un problema con intención
Ámbitos de desafío OAuth: repo
base_ref: Referencia Git (p. ej., rama) desde la que el agente comenzará su trabajo. Si no se especifica, se utiliza la rama predeterminada del repositorio. Se ignora cuando is_suggestion es verdadero (cadena, opcional)
confidence: Qué tan seguro estás de esta elección. 'HIGH' para una señal clara o solicitud explícita del usuario, 'MEDIUM' para una inferencia razonable con cierta ambigüedad, 'LOW' para una suposición con señal limitada. (cadena, obligatorio)
custom_instructions: Instrucciones personalizadas opcionales para guiar al agente más allá del cuerpo del problema. Se ignoran cuando is_suggestion es verdadero (cadena, opcional)
is_suggestion: Si es verdadero, registra una intención de asignación de Copilot pendiente en lugar de lanzar el agente. La aprobación posterior proporciona el contexto de lanzamiento; base_ref y custom_instructions se ignoran en este caso. (booleano, obligatorio)
issue_number: Número del problema (número, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
rationale: Una oración concisa que explique qué específicamente del problema llevó a elegir Copilot. Indica la señal concreta (p. ej., 'Tarea bien definida con criterios de aceptación claros'). (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
Dependabot
get_dependabot_alert - Obtener alerta de Dependabot
Ámbitos de desafío OAuth: security_events
alertNumber: El número de la alerta. (número, obligatorio)
owner: El propietario del repositorio. (cadena, obligatorio)
repo: El nombre del repositorio. (cadena, obligatorio)
list_dependabot_alerts - Listar alertas de Dependabot
Ámbitos de desafío OAuth: security_events
after: Cursor para paginación. Usa el cursor de la respuesta anterior. (cadena, opcional)
owner: El propietario del repositorio. (cadena, obligatorio)
perPage: Resultados por página para paginación (mín. 1, máx. 100) (número, opcional)
repo: El nombre del repositorio. (cadena, obligatorio)
severity: Filtrar alertas de Dependabot por severidad (cadena, opcional)
state: Filtrar alertas de Dependabot por estado. El valor predeterminado es abierto (cadena, opcional)
Discusiones
discussion_comment_write - Gestionar comentarios de discusión
Ámbitos de desafío OAuth: repo
body: Contenido del comentario (obligatorio para los métodos 'add', 'reply' y 'update') (cadena, opcional)
commentNodeID: El ID de nodo del comentario de discusión (obligatorio para los métodos 'reply', 'update', 'delete', 'mark_answer' y 'unmark_answer'). Para 'reply', este es el comentario de nivel superior al que se responde; GitHub Discussions solo admite un nivel de anidamiento. (cadena, opcional)
discussionNumber: Número de discusión (obligatorio 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' - agrega un nuevo comentario de nivel superior a una discusión.
'reply' - responde a un comentario de discusión de nivel superior (GitHub Discussions solo admite 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 preguntas y respuestas).
'unmark_answer' - desmarca un comentario de discusión como la respuesta (solo preguntas y respuestas).
(cadena, obligatorio)
owner: Propietario del repositorio (obligatorio para los métodos 'add' y 'reply') (cadena, opcional)
repo: Nombre del repositorio (obligatorio para los métodos 'add' y 'reply') (cadena, opcional)
get_discussion - Obtener discusión
Ámbitos de desafío OAuth: repo
discussionNumber: Número de discusión (número, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
get_discussion_comments - Obtener comentarios de discusión
Ámbitos de desafío OAuth: repo
after: Cursor para paginación. Usa el cursor de la respuesta anterior. (cadena, opcional)
discussionNumber: Número de discusión (número, obligatorio)
includeReplies: Cuando es verdadero, 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). El valor predeterminado es falso. (booleano, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
perPage: Resultados por página para paginación (mín. 1, máx. 100) (número, opcional)
repo: Nombre del repositorio (cadena, obligatorio)
list_discussion_categories - Listar categorías de discusión
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (cadena, obligatorio)
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 desafío OAuth: 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 del 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, obligatorio)
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)
Gists
create_gist - Crear Gist
Ámbitos de desafío OAuth: gist
content: Contenido para la creación simple de un gist de un solo archivo (cadena, obligatorio)
description: Descripción del gist (cadena, opcional)
filename: Nombre de archivo para la creación simple de un gist de un solo archivo (cadena, obligatorio)
public: Si el gist es público (booleano, opcional)
get_gist - Obtener contenido del Gist
gist_id: El ID del gist (cadena, obligatorio)
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 momento (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 desafío OAuth: gist
content: Contenido para el archivo (cadena, obligatorio)
description: Descripción actualizada del gist (cadena, opcional)
filename: Nombre de archivo a actualizar o crear (cadena, obligatorio)
gist_id: ID del gist a actualizar (cadena, obligatorio)
Git
- **get_repository_tree** - Obtener el árbol del repositorio
- **Ámbitos de desafío OAuth**: `repo`
- `owner`: Propietario del repositorio (nombre de usuario u organización) (cadena, obligatorio)
- `path_filter`: Prefijo de ruta opcional para filtrar los resultados del árbol (por ejemplo, 'src/' para mostrar solo archivos en el directorio src) (cadena, opcional)
- `recursive`: Establecer este parámetro en true devuelve los objetos o subárboles referenciados por el árbol. El valor predeterminado es false (booleano, opcional)
- `repo`: Nombre del repositorio (cadena, obligatorio)
- `tree_sha`: El valor SHA1 o el nombre de la ref (rama o etiqueta) del árbol. El valor predeterminado es la rama predeterminada del repositorio (cadena, opcional)
Problemas
add_issue_comment - Agregar comentario a un problema o solicitud de extracción
Ámbitos de desafío OAuth: repo
body: Contenido del comentario. Obligatorio a menos que se proporcione una reacción. (cadena, opcional)
comment_id: El ID numérico del comentario del problema o solicitud de extracción al que reaccionar. Úselo para reacciones a comentarios; omítalo para reaccionar al problema o solicitud de extracción en sí. No se puede combinar con body. (entero, opcional)
issue_number: Número del problema o solicitud de extracción para comentar o reaccionar. (número, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
reaction: Reacción de emoji para agregar. Obligatoria a menos que se proporcione body. (cadena, opcional)
repo: Nombre del repositorio (cadena, obligatorio)
get_label - Obtener una etiqueta específica de un repositorio
Ámbitos de desafío OAuth: repo
name: Nombre de la etiqueta. (cadena, obligatorio)
owner: Propietario del repositorio (nombre de usuario u organización) (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
issue_read - Obtener detalles de un problema
Ámbitos de desafío OAuth: repo
issue_number: El número del problema (número, obligatorio)
method: La operación de lectura a realizar en un solo problema.
Las opciones son:
get - Obtener detalles del problema. También devuelve indicadores de jerarquía de mejor esfuerzo (has_parent, has_children); parent y sub_issues_summary son resúmenes de relaciones opcionales, y closed_by_pull_requests resume las solicitudes de extracción configuradas para cerrar el problema como total_count más hasta 5 references.
get_comments - Obtener comentarios del problema.
get_sub_issues - Obtener subproblemas (hijos) del problema.
get_parent - Obtener el problema principal, si este problema es un subproblema de otro.
get_labels - Obtener etiquetas asignadas al problema.
(cadena, obligatorio)
owner: El propietario del repositorio (cadena, obligatorio)
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, obligatorio)
issue_write - Crear o actualizar problema/solicitud de extracción
Ámbitos de desafío OAuth: repo
assignees: Nombres de usuario para asignar a este problema (cadena[], opcional)
body: Contenido del cuerpo del problema (cadena, opcional)
duplicate_of: Número del problema del cual este problema es un duplicado. Obligatorio cuando state_reason es 'duplicate'. (número, opcional)
issue_fields: Valores de campos del problema para establecer o borrar. Cada elemento requiere 'field_name' y exactamente uno de 'value', 'field_option_name' o 'delete: true'. (objeto[], opcional)
issue_number: Número del problema a actualizar (número, opcional)
labels: Etiquetas para aplicar a este problema (cadena[], opcional)
method: Operación de escritura a realizar en un solo problema.
Las opciones son:
'create' - crea un nuevo problema.
'update' - actualiza un problema existente.
(cadena, obligatorio)
milestone: Número de hito (número, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
parent_issue_number: Número del problema principal. Solo se usa cuando el método es 'create' y no se puede combinar con issue_fields. El nuevo problema se crea y se adjunta a este principal en la misma operación. (número, opcional)
parent_owner: Propietario del repositorio del problema principal. Debe proporcionarse con parent_repo. Omita ambos para usar owner y repo. Solo se usa cuando el método es 'create' y se proporciona parent_issue_number. (cadena, opcional)
parent_repo: Nombre del repositorio del problema principal. Debe proporcionarse con parent_owner. Omita ambos para usar owner y repo. Solo se usa cuando el método es 'create' y se proporciona parent_issue_number. (cadena, opcional)
repo: Nombre del repositorio (cadena, obligatorio)
state: Nuevo estado (cadena, opcional)
state_reason: Razón para el cambio de estado. Se ignora a menos que se cambie el estado. (cadena, opcional)
title: Título del problema (cadena, opcional)
type: Tipo de este problema. Para actualizaciones, pase null para eliminar el tipo actual. Solo use si los tipos de problemas están habilitados para este repositorio. Use 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 problemas, omita este parámetro. (cadena | null, opcional)
list_issue_fields - Listar campos de problemas
Ámbitos de desafío OAuth: repo, read:org
owner: El propietario de la cuenta del repositorio u organización. El nombre no distingue entre mayúsculas y minúsculas. (cadena, obligatorio)
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 problemas disponibles
Ámbitos de desafío OAuth: repo, read:org
owner: El propietario de la cuenta del repositorio u organización. (cadena, obligatorio)
repo: El nombre del repositorio. Cuando se proporciona, devuelve tipos de problemas para este repositorio específico. Cuando se omite, devuelve tipos de problemas a nivel de organización directamente. (cadena, opcional)
list_issues - Listar problemas
Ámbitos de desafío OAuth: repo
after: Cursor para paginación. Use el cursor de la respuesta anterior. (cadena, opcional)
direction: Dirección del orden. Si se proporciona, también se debe proporcionar 'orderBy'. (cadena, opcional)
field_filters: Filtrar por valores de campos personalizados de problemas. Cada entrada toma un field_name y un valor; 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 AAAA-MM-DD). (objeto[], opcional)
fields: Subconjunto de campos a devolver para cada problema. Si se omite, se devuelven todos los campos. Use esto para reducir el tamaño de la respuesta cuando solo necesita campos específicos; omitir 'body' y 'field_values' en particular elimina los datos más grandes por resultado. (cadena[], opcional)
labels: Filtrar por etiquetas (cadena[], opcional)
orderBy: Ordenar problemas por campo. Si se proporciona, también se debe proporcionar 'direction'. (cadena, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
perPage: Resultados por página para paginación (mín. 1, máx. 100) (número, opcional)
repo: Nombre del repositorio (cadena, obligatorio)
since: Filtrar por fecha (marca de tiempo ISO 8601) (cadena, opcional)
state: Filtrar por estado; por defecto se devuelven tanto problemas abiertos como cerrados cuando no se proporciona (cadena, opcional)
search_issues - Buscar problemas
Ámbitos de desafío OAuth: repo
fields: Subconjunto de campos a devolver para cada resultado de problema. Si se omite, se devuelven todos los campos. Use esto para reducir el tamaño de la respuesta cuando solo necesita campos específicos; omitir 'body', 'reactions' y 'labels' en particular elimina los datos más grandes por resultado. (cadena[], opcional)
order: Orden de clasificación (cadena, opcional)
owner: Propietario del repositorio opcional. Si se proporciona con repo, solo se listan problemas para 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: La consulta de búsqueda, como lenguaje natural. Cuando el usuario da formulaciones alternativas, inclúyalas como palabras simples en lugar de unirlas con OR. (cadena, obligatorio)
repo: Nombre del repositorio opcional. Si se proporciona con owner, solo se listan problemas para este repositorio. (cadena, opcional)
sort: Campo de clasificación por número de coincidencias de categorías; el valor predeterminado es la mejor coincidencia (cadena, opcional)
sub_issue_write - Cambiar subproblema
Ámbitos de desafío OAuth: repo
after_id: El ID del subproblema que se priorizará después (se debe especificar after_id O before_id) (número, opcional)
before_id: El ID del subproblema que se priorizará antes (se debe especificar after_id O before_id) (número, opcional)
issue_number: El número del problema principal (número, obligatorio)
method: La acción a realizar en un solo subproblema
Las opciones son:
'add' - agregar un subproblema a un problema principal en un repositorio de GitHub.
'remove' - eliminar un subproblema de un problema principal en un repositorio de GitHub.
'reprioritize' - cambiar el orden de los subproblemas dentro de un problema principal en un repositorio de GitHub. Use 'after_id' o 'before_id' para especificar la nueva posición.
Escribe la jerarquía de problemas. Para mover un subproblema a un nuevo principal, use add con replace_parent=true; no hay campo principal escribible.
(cadena, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
replace_parent: Cuando es true, reemplaza el problema principal actual del subproblema. Use solo con el método 'add'. (booleano, opcional)
repo: Nombre del repositorio (cadena, obligatorio)
sub_issue_id: El ID del subproblema a agregar. El ID no es lo mismo que el número del problema (número, obligatorio)
Etiquetas
get_label - Obtener una etiqueta específica de un repositorio
Ámbitos de desafío OAuth: repo
name: Nombre de la etiqueta. (cadena, obligatorio)
owner: Propietario del repositorio (nombre de usuario u organización) (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
label_write - Operaciones de escritura en etiquetas del repositorio
Ámbitos de desafío OAuth: repo
color: Color de la etiqueta como código hexadecimal de 6 caracteres sin prefijo '#' (por ejemplo, 'f29513'). Obligatorio 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, obligatorio)
name: Nombre de la etiqueta: obligatorio para todas las operaciones (cadena, obligatorio)
new_name: Nuevo nombre para la etiqueta (se usa solo con el método 'update' para renombrar) (cadena, opcional)
owner: Propietario del repositorio (nombre de usuario u organización) (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
list_label - Listar etiquetas de un repositorio
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (nombre de usuario u organización): obligatorio para todas las operaciones (cadena, obligatorio)
repo: Nombre del repositorio: obligatorio para todas las operaciones (cadena, obligatorio)
Notificaciones
- **dismiss_notification** - Descartar notificación
- **Ámbitos de desafío OAuth**: `notifications`
- `state`: El nuevo estado de la notificación (leída/hecha) (cadena, obligatorio)
- `threadID`: El ID del hilo de notificación (cadena, obligatorio)
get_notification_details - Obtener detalles de la notificación
Ámbitos de desafío OAuth: notifications
notificationID: El ID de la notificación (cadena, obligatorio)
list_notifications - Listar notificaciones
Ámbitos de desafío OAuth: notifications
before: Mostrar solo notificaciones actualizadas antes de la hora indicada (formato ISO 8601) (cadena, opcional)
filter: Filtrar notificaciones; usar el valor predeterminado a menos que se especifique. Las notificaciones leídas son aquellas que el usuario ya ha reconocido. Las notificaciones participantes son aquellas en las que el usuario está directamente involucrado, como problemas o solicitudes de extracción en los 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 la paginación (mín. 1) (número, opcional)
perPage: Resultados por página para la paginación (mín. 1, máx. 100) (número, opcional)
repo: Nombre del repositorio opcional. Si se proporciona con propietario, solo se listan las notificaciones de este repositorio. (cadena, opcional)
since: Mostrar solo notificaciones actualizadas después de la hora indicada (formato ISO 8601) (cadena, opcional)
manage_notification_subscription - Gestionar suscripción de notificación
Ámbitos de desafío OAuth: notifications
action: Acción a realizar: ignorar, observar o eliminar la suscripción de notificación. (cadena, obligatorio)
notificationID: El ID del hilo de notificación. (cadena, obligatorio)
manage_repository_notification_subscription - Gestionar suscripción de notificación del repositorio
Ámbitos de desafío OAuth: notifications
action: Acción a realizar: ignorar, observar o eliminar la suscripción de notificación del repositorio. (cadena, obligatorio)
owner: El propietario de la cuenta del repositorio. (cadena, obligatorio)
repo: El nombre del repositorio. (cadena, obligatorio)
mark_all_notifications_read - Marcar todas las notificaciones como leídas
Ámbitos de desafío OAuth: notifications
lastReadAt: Describe el último punto en que se revisaron las notificaciones (opcional). Predeterminado: Ahora (cadena, opcional)
owner: Propietario del repositorio opcional. Si se proporciona con repo, solo se marcan como leídas las notificaciones de este repositorio. (cadena, opcional)
repo: Nombre del repositorio opcional. Si se proporciona con propietario, solo se marcan como leídas las notificaciones de este repositorio. (cadena, opcional)
Organizaciones
search_orgs - Buscar organizaciones
Ámbitos de desafío OAuth: read:org
order: Orden de clasificación (cadena, opcional)
page: Número de página para la paginación (mín. 1) (número, opcional)
perPage: Resultados por página para la 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, obligatorio)
sort: Campo de clasificación por categoría (cadena, opcional)
Proyectos
projects_get - Obtener detalles de los recursos de GitHub Projects
Ámbitos de desafío OAuth: read:project
field_id: El ID del campo. Obligatorio para el método 'get_project_field'. (número, opcional)
field_names: Lista específica de nombres de campos para incluir en la respuesta al obtener un elemento de proyecto (p. ej. ["Status", "Priority"]). Se resuelve en el 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'. (string[], opcional)
fields: Lista específica de IDs de campo para incluir en la respuesta al obtener un elemento de proyecto (p. ej. ["102589", "985201", "169875"]). Si no se proporcionan 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'. (string[], opcional)
item_id: El ID del elemento. Obligatorio para el método 'get_project_item'. (número, opcional)
method: El método a ejecutar (cadena, obligatorio)
owner: El propietario (inicio de sesión de usuario u organización). El nombre no distingue entre mayúsculas y minúsculas. (cadena, opcional)
owner_type: Tipo de propietario (usuario u organización). 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. Obligatorio para el método 'get_project_status_update'. (cadena, opcional)
view_id: El ID de nodo de la vista del proyecto. Obligatorio para el método 'get_project_view'. (cadena, opcional)
projects_list - Listar recursos de GitHub Projects
Ámbitos de desafío OAuth: read:project
after: Cursor de paginación hacia adelante desde pageInfo.nextCursor anterior. (cadena, opcional)
before: Cursor de paginación hacia atrás desde pageInfo.prevCursor anterior (raro). (cadena, opcional)
field_names: Nombres de campos para incluir al listar elementos de proyecto (p. ej. ["Status", "Priority"]). Se resuelven en el 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'. (string[], opcional)
fields: IDs de campo para incluir al listar elementos de proyecto (p. 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'. (string[], opcional)
method: La acción a realizar (cadena, obligatorio)
owner: El propietario (inicio de sesión de usuario u organización). El nombre no distingue entre mayúsculas y minúsculas. (cadena, obligatorio)
owner_type: Tipo de propietario (usuario u organización). Si no se proporciona, se intentarán automáticamente ambos. (cadena, opcional)
per_page: Resultados por página (máx. 50) (número, opcional)
project_number: El número del proyecto. Obligatorio para los métodos 'list_project_fields', 'list_project_items', 'list_project_views' y 'list_project_status_updates'. (número, opcional)
query: Cadena de filtro/consulta. Para list_projects: filtrar por texto de título y estado (p. 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 desafío OAuth: 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 (p. ej. 'Sprint'). Obligatorio para el método 'create_iteration_field'. (cadena, opcional)
filter: Filtro de vista guardada; omita en la actualización para conservarlo, o pase null para borrarlo. (cadena | null, opcional)
issue_number: El número del problema. Obligatorio para 'add_project_item' cuando item_type es 'issue'. También aceptado por 'update_project_item' para resolver el elemento por número de problema (combine con item_owner y item_repo). (número, opcional)
item_id: El ID del elemento del proyecto. Obligatorio para 'delete_project_item'. Para 'update_project_item', proporcione item_id, o (item_owner + item_repo + issue_number) para resolver el elemento por problema. (número, opcional)
item_owner: El propietario (usuario u organización) del repositorio que contiene el problema o la solicitud de extracción. Obligatorio para el método 'add_project_item'. También aceptado por 'update_project_item' al resolver el elemento por número de problema. (cadena, opcional)
item_repo: El nombre del repositorio que contiene el problema o la solicitud de extracción. Obligatorio para el método 'add_project_item'. También aceptado por 'update_project_item' al resolver el elemento por número de problema. (cadena, opcional)
item_type: El tipo del elemento, ya sea issue o pull_request. Obligatorio para el método 'add_project_item'. (cadena, opcional)
items: Los elementos a actualizar con el 'updated_field' de nivel superior. Obligatorio para 'update_project_items'; prefiera esto en lugar de llamar a 'update_project_item' en un bucle. Cada entrada debe coincidir exactamente con una variante de referencia: 'node_id', 'item_id' numérico, o 'item_owner' + 'item_repo' + 'issue_number'. Límite: 50 elementos por llamada. (object[], opcional)
iteration_duration: Duración en días para las iteraciones del campo (p. ej. 7 para semanal, 14 para quincenal). Obligatorio para el método 'create_iteration_field'. (número, opcional)
iterations: Iteraciones personalizadas para el método 'create_iteration_field'. Solo configure esto 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 en la mayoría de los casos. (object[], opcional)
layout: Diseño de vista; obligatorio al crear una vista. (cadena, opcional)
method: El método a ejecutar (cadena, obligatorio)
name: Nombre de la vista; obligatorio al crear una vista. (cadena, opcional)
owner: El propietario del proyecto (inicio de sesión de usuario u organización). El nombre no distingue entre mayúsculas y minúsculas. (cadena, obligatorio)
owner_type: Tipo de propietario (usuario u organización). Obligatorio 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. Obligatorio para todos los métodos excepto 'create_project'. (número, opcional)
pull_request_number: El número de la solicitud de extracción (use 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. Obligatorio para el método 'create_project'. (cadena, opcional)
updated_field: El campo/valor a aplicar, usando {"id": 123, "value": ...} o {"name": "Status", "value": ...}; null borra el campo. Obligatorio para 'update_project_item' y 'update_project_items', donde un campo/valor de nivel superior se aplica a cada elemento en un lote. Para campos SINGLE_SELECT de 'update_project_item', la forma de nombre acepta nombres de opciones; la forma de ID espera un ID de opción. (objeto, opcional)
view_id: ID de nodo de la vista del proyecto para actualizar o eliminar; debe pertenecer al propietario/número de proyecto. (cadena, opcional)
visible_field_names: Nombres de campos de proyecto ordenados para mostrar al crear o reemplazar en la actualización; omita en la actualización para conservarlos, o pase [] para restablecer. Mutuamente excluyente con visible_fields. Roadmap solo acepta []. (string[], opcional)
visible_fields: IDs de base de datos de campos de proyecto ordenados para mostrar al crear o reemplazar en la actualización; omita en la actualización para conservarlos, o pase [] para restablecer. Mutuamente excluyente con visible_field_names. Roadmap solo acepta []. (string[], opcional)
Pull Requests
add_comment_to_pending_review - Añadir comentario de revisión a la revisión de pull request pendiente más reciente del solicitante
Ámbitos de desafío OAuth: repo
body: El texto del comentario de revisión (cadena, obligatorio)
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, obligatorio)
path: La ruta relativa al archivo que requiere un comentario (cadena, obligatorio)
pullNumber: Número de pull request (número, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
side: El lado del diff en el que comentar. LEFT indica el estado anterior, RIGHT indica el estado nuevo (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 estado nuevo (cadena, opcional)
subjectType: El nivel al que se dirige el comentario (cadena, obligatorio)
add_reply_to_pull_request_comment - Añadir respuesta a un comentario de pull request
Ámbitos de desafío OAuth: repo
body: El texto de la respuesta. Obligatorio a menos que se proporcione una reacción. (cadena, opcional)
commentId: El ID numérico del comentario de revisión de pull request al que responder o reaccionar. Usa el número de un ancla #discussion_r..., no el ID de nodo de hilo de GraphQL (PRRT_...). (número, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
pullNumber: Número de pull request. Obligatorio cuando se proporciona el cuerpo. (número, opcional)
reaction: Reacción de emoji a añadir. Obligatoria a menos que se proporcione el cuerpo. (cadena, opcional)
repo: Nombre del repositorio (cadena, obligatorio)
create_pull_request - Abrir nueva pull request
Ámbitos de desafío OAuth: repo
base: Rama en la que fusionar (cadena, obligatorio)
body: Descripción de la PR (cadena, opcional)
draft: Crear como PR borrador (booleano, opcional)
head: Rama que contiene los cambios (cadena, obligatorio)
maintainer_can_modify: Permitir ediciones de mantenedores (booleano, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
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, obligatorio)
list_pull_requests - Listar pull requests
Ámbitos de desafío OAuth: repo
base: Filtrar por rama base (cadena, opcional)
direction: Dirección de ordenación (cadena, opcional)
fields: Subconjunto de campos a devolver para cada pull request. Si se omite, se devuelven todos los campos. Úsalo para reducir el tamaño de la respuesta cuando solo necesites campos específicos; omitir 'body' en particular elimina los datos más grandes por resultado. (cadena[], opcional)
head: Filtrar por usuario/org de cabeza y rama (cadena, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
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, obligatorio)
sort: Ordenar por (cadena, opcional)
state: Filtrar por estado (cadena, opcional)
merge_pull_request - Fusionar pull request
Ámbitos de desafío OAuth: repo
commit_message: Detalle adicional 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, obligatorio)
pullNumber: Número de pull request (número, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
pull_request_read - Obtener detalles de una sola pull request
Ámbitos de desafío OAuth: repo
after: Cursor para paginación, usado solo por el método get_review_comments. Pasa el endCursor de la PageInfo de la página anterior para obtener la siguiente página. (cadena, opcional)
method: Acción para especificar qué datos de pull request deben recuperarse de GitHub.
Opciones posibles:
get - Obtener detalles de una pull request específica.
get_diff - Obtener el diff de una pull request.
get_status - Obtener el estado combinado de commits de un commit de cabeza en una pull request.
get_files - Obtener la lista de archivos modificados en una pull request. Usar con parámetros de paginación para controlar el número de resultados devueltos.
get_commits - Obtener la lista de commits en una pull request. Usar con parámetros de paginación para controlar el número de resultados devueltos.
get_review_comments - Obtener hilos de revisión en una pull request. Cada hilo contiene comentarios de revisión agrupados lógicamente realizados en la misma ubicación de código durante las revisiones de pull request. Devuelve hilos con metadatos (isResolved, isOutdated, isCollapsed) y sus comentarios asociados. Usar paginación basada en cursor (perPage, after) para controlar los resultados.
get_reviews - Obtener las revisiones en una pull request. Cuando se soliciten comentarios de revisión, usar el método get_review_comments. Usar con parámetros de paginación para controlar el número de resultados devueltos.
get_comments - Obtener comentarios en una pull request. Usar 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.
get_check_runs - Obtener ejecuciones de verificación para el commit de cabeza de una pull request. Las ejecuciones de verificación son los trabajos y verificaciones individuales de CI/CD que se ejecutan en la PR.
(cadena, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
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 pull request (número, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
pull_request_review_write - Operaciones de escritura (crear, enviar, eliminar) en revisiones de pull request
Ámbitos de desafío OAuth: 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 pull request. (cadena, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
pullNumber: Número de pull request (número, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
threadId: El ID de nodo del hilo de revisión (por ejemplo, PRRT_kwDOxxx). Obligatorio para los métodos resolve_thread y unresolve_thread. Obtener IDs de hilo de pull_request_read con el método get_review_comments. (cadena, opcional)
search_pull_requests - Buscar pull requests
Ámbitos de desafío OAuth: repo
fields: Subconjunto de campos a devolver para cada resultado de pull request. Si se omite, se devuelven todos los campos. Úsalo para reducir el tamaño de la respuesta cuando solo necesites campos específicos; omitir 'body', 'reactions' y 'labels' en particular elimina los datos más grandes por resultado. (cadena[], opcional)
order: Orden de clasificación (cadena, opcional)
owner: Propietario del repositorio opcional. Si se proporciona con repo, solo se listan las pull requests 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 pull requests de GitHub (cadena, obligatorio)
repo: Nombre del repositorio opcional. Si se proporciona con owner, solo se listan las pull requests de este repositorio. (cadena, opcional)
sort: Campo de clasificación por número de coincidencias de categorías, por defecto mejor coincidencia (cadena, opcional)
update_pull_request - Editar pull request
Ámbitos de desafío OAuth: repo
base: Nuevo nombre de rama base (cadena, opcional)
body: Nueva descripción (cadena, opcional)
draft: Marcar pull request 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, obligatorio)
pullNumber: Número de pull request a actualizar (número, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
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 pull request
Ámbitos de desafío OAuth: repo
expectedHeadSha: El SHA esperado de la referencia HEAD de la pull request (cadena, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
pullNumber: Número de pull request (número, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
Repositories
create_branch - Crear rama
Ámbitos de desafío OAuth: repo
branch: Nombre para la nueva rama (cadena, obligatorio)
from_branch: Rama de origen (por defecto la rama predeterminada del repositorio) (cadena, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
create_or_update_file - Crear o actualizar archivo
Ámbitos de desafío OAuth: repo, workflow
allow_symlink_write: Establecer true para actualizar un enlace simbólico en sí mismo; el contenido debe ser su nueva ruta de destino. (booleano, opcional)
branch: Rama en la que crear/actualizar el archivo (cadena, obligatorio)
content: Contenido del archivo, exactamente como debe aparecer una vez escrito. No lo codifiques en base64; este servidor lo hace antes de llamar a la API REST. (cadena, obligatorio)
message: Mensaje de commit (cadena, obligatorio)
owner: Propietario del repositorio (nombre de usuario u organización) (cadena, obligatorio)
path: Ruta donde crear/actualizar el archivo (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
sha: El SHA del blob del archivo que se reemplaza. Obligatorio si el archivo ya existe. (cadena, opcional)
create_repository - Crear repositorio
Ámbitos de desafío OAuth: repo
autoInit: Inicializar con README (booleano, opcional)
description: Descripción del repositorio (cadena, opcional)
name: Nombre del repositorio (cadena, obligatorio)
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 desafío OAuth: repo, workflow
branch: Rama de la que eliminar el archivo (cadena, obligatorio)
message: Mensaje de commit (cadena, obligatorio)
owner: Propietario del repositorio (nombre de usuario u organización) (cadena, obligatorio)
path: Ruta al archivo a eliminar (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
delete_repository - Eliminar repositorio
Ámbitos de desafío OAuth: delete_repo, repo
owner: Propietario del repositorio (nombre de usuario u organización) (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
fork_repository - Bifurcar repositorio
Ámbitos de desafío OAuth: repo
organization: Organización a la que bifurcar (cadena, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
get_commit - Obtener detalles de un commit
Ámbitos de desafío OAuth: 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" además incluye el contenido de diff unificado para cada archivo y puede ser muy grande. (cadena, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
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, obligatorio)
sha: SHA del commit, nombre de rama o nombre de etiqueta (cadena, obligatorio)
get_file_contents - Obtener contenido de archivo o directorio
Ámbitos de desafío OAuth: repo
fields: Subconjunto de campos a devolver para cada entrada cuando la ruta es un directorio. Si se omite, se devuelven todos los campos. Se ignora cuando la ruta es un archivo único. Úselo para reducir el tamaño de la respuesta al listar directorios y solo necesite campos específicos, p. ej., solo 'name' y 'type'. (cadena[], opcional)
owner: Propietario del repositorio (nombre de usuario u organización) (cadena, obligatorio)
path: Ruta al archivo/directorio (cadena, opcional)
ref: Acepta refs de git opcionales como refs/tags/{tag}, refs/heads/{branch} o refs/pull/{pr_number}/head (cadena, opcional)
repo: Nombre del repositorio (cadena, obligatorio)
sha: Acepta SHA de commit opcional. Si se especifica, se usará en lugar de ref (cadena, opcional)
get_latest_release - Obtener la última versión
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
get_release_by_tag - Obtener una versión por nombre de etiqueta
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
tag: Nombre de etiqueta (p. ej., 'v1.0.0') (cadena, obligatorio)
get_tag - Obtener detalles de etiqueta
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
tag: Nombre de etiqueta (cadena, obligatorio)
list_branches - Listar ramas
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (cadena, obligatorio)
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, obligatorio)
list_commits - Listar commits
Ámbitos de desafío OAuth: repo
author: Nombre de usuario o dirección de correo electrónico del autor para filtrar commits (cadena, opcional)
fields: Subconjunto de campos a devolver para cada commit. Si se omite, se devuelven todos los campos. Úselo para reducir el tamaño de la respuesta cuando solo necesite campos específicos, p. ej., solo 'sha' y 'html_url'. (cadena[], opcional)
owner: Propietario del repositorio (cadena, obligatorio)
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, obligatorio)
sha: SHA de commit, rama o nombre de etiqueta para listar commits. Si no se proporciona, se usa la rama predeterminada del repositorio. Si se proporciona un SHA de commit, se listarán 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 desafío OAuth: repo
fields: Subconjunto de campos a devolver para cada versión. Si se omite, se devuelven todos los campos. Úselo para reducir el tamaño de la respuesta cuando solo necesite campos específicos; omitir 'body' en particular elimina los datos más grandes por versión. (cadena[], opcional)
owner: Propietario del repositorio (cadena, obligatorio)
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, obligatorio)
list_repository_collaborators - Listar colaboradores del repositorio
Ámbitos de desafío OAuth: repo
affiliation: Filtrar por afiliación. Puede ser uno de: 'outside' (colaboradores externos), 'direct' (todos con permisos independientemente de la membresía de la organización), 'all' (todos los colaboradores). Predeterminado: 'all' (cadena, opcional)
owner: Propietario del repositorio (cadena, obligatorio)
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, obligatorio)
list_tags - Listar etiquetas
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (cadena, obligatorio)
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, obligatorio)
push_files - Enviar archivos al repositorio
Ámbitos de desafío OAuth: repo, workflow
branch: Rama a la que enviar (cadena, obligatorio)
files: Matriz de objetos de archivo a enviar, cada objeto con ruta (cadena) y contenido (cadena) (objeto[], obligatorio)
message: Mensaje del commit (cadena, obligatorio)
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
search_code - Buscar código
Ámbitos de desafío OAuth: repo
fields: Subconjunto de campos a devolver para cada resultado de búsqueda de código. Si se omite, se devuelven todos los campos. Úselo para reducir el tamaño de la respuesta cuando solo necesite campos específicos; omitir 'repository' y 'text_matches' en particular elimina los datos más grandes por resultado. (cadena[], opcional)
order: Orden de clasificación para 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 (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, obligatorio)
sort: Campo de clasificación (solo 'indexed') (cadena, opcional)
search_commits - Buscar commits
Ámbitos de desafío OAuth: 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 (REST de búsqueda de commits de GitHub). Busca mensajes de commit solo en la rama predeterminada. Limite la búsqueda con repo:owner/repo, org: o user: (las consultas sin calificador de ámbito coinciden en todo GitHub y generalmente no son lo que desea). 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, obligatorio)
sort: Ordenar por fecha de autor o committer (predeterminado: mejor coincidencia) (cadena, opcional)
search_repositories - Buscar repositorios
Ámbitos de desafío OAuth: repo
minimal_output: Devolver información mínima del repositorio (predeterminado: true). Cuando es false, devuelve objetos completos de la API de GitHub del repositorio. (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, obligatorio)
sort: Ordenar repositorios por campo, predeterminado: mejor coincidencia (cadena, opcional)
Protección de secretos
get_secret_scanning_alert - Obtener alerta de escaneo de secretos
Ámbitos de desafío OAuth: security_events
alertNumber: El número de la alerta. (número, obligatorio)
owner: El propietario del repositorio. (cadena, obligatorio)
repo: El nombre del repositorio. (cadena, obligatorio)
list_secret_scanning_alerts - Listar alertas de escaneo de secretos
Ámbitos de desafío OAuth: security_events
owner: El propietario del repositorio. (cadena, obligatorio)
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, obligatorio)
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, pase el/los nombre(s) de token en el parámetro. (cadena, opcional)
state: Filtrar por estado (cadena, opcional)
Avisos de seguridad
get_global_security_advisory - Obtener un aviso de seguridad global
Ámbitos de desafío OAuth: security_events
ghsaId: ID de aviso de seguridad de GitHub (formato: GHSA-xxxx-xxxx-xxxx). (cadena, obligatorio)
list_global_security_advisories - Listar avisos de seguridad globales
Ámbitos de desafío OAuth: security_events
affects: Filtrar avisos por paquete o versión afectada (p. ej. "package1,package2@1.0.0"). (cadena, opcional)
cveId: Filtrar por ID de CVE. (cadena, opcional)
cwes: Filtrar por IDs de Enumeración de Debilidades Comunes (p. ej. ["79", "284", "22"]). (cadena[], opcional)
ecosystem: Filtrar por ecosistema de paquete. (cadena, opcional)
ghsaId: Filtrar por ID de 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 gravedad. (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 desafío OAuth: security_events
direction: Dirección de ordenación. (cadena, opcional)
org: El inicio de sesión de la organización. (cadena, obligatorio)
sort: Campo de ordenación. (cadena, opcional)
state: Filtrar por estado del aviso. (cadena, opcional)
list_repository_security_advisories - Listar avisos de seguridad de repositorios
Ámbitos de desafío OAuth: security_events
direction: Dirección de ordenación. (cadena, opcional)
owner: El propietario del repositorio. (cadena, obligatorio)
repo: El nombre del repositorio. (cadena, obligatorio)
sort: Campo de ordenación. (cadena, opcional)
state: Filtrar por estado del aviso. (cadena, opcional)
Stargazers
list_starred_repositories - Listar repositorios marcados con estrella
Ámbitos de desafío OAuth: repo
direction: La dirección para ordenar los resultados. (cadena, opcional)
page: Número de página para la paginación (mín. 1) (número, opcional)
perPage: Resultados por página para la paginación (mín. 1, máx. 100) (número, opcional)
sort: Cómo ordenar los resultados. Puede ser 'created' (cuando se marcó el repositorio con estrella) o 'updated' (cuando se realizó el último push al repositorio). (cadena, opcional)
username: Nombre de usuario para listar los repositorios marcados con estrella. Por defecto, el usuario autenticado. (cadena, opcional)
star_repository - Marcar repositorio con estrella
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
unstar_repository - Quitar estrella de un repositorio
Ámbitos de desafío OAuth: repo
owner: Propietario del repositorio (cadena, obligatorio)
repo: Nombre del repositorio (cadena, obligatorio)
Users
search_users - Buscar usuarios
Ámbitos de desafío OAuth: repo
order: Orden de clasificación (cadena, opcional)
page: Número de página para la paginación (mín. 1) (número, opcional)
perPage: Resultados por página para la 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, obligatorio)
sort: Ordenar usuarios por número de seguidores o repositorios, o por cuándo la persona se unió 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 continuar. (cadena, obligatorio)
repo: Nombre del repositorio. Puedes adivinar el nombre del repositorio, pero confírmalo con el usuario antes de continuar. (cadena, obligatorio)
problem_statement: Descripción detallada de la tarea a realizar (p. ej., 'Implementar una función que haga X', 'Corregir el error Y', etc.) (cadena, obligatorio)
title: Título para la solicitud de extracción que se creará (cadena, obligatorio)
base_ref: Referencia de Git (p. 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 ámbitos de PAT clásico, por lo que estas herramientas pueden aparecer incluso cuando el token no puede usarlas.
Para espacios propiedad de la 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 la organización contiene recursos respaldados por repositorios, el token también debe tener acceso a cada repositorio referenciado o el espacio puede tratarse como no encontrado.
get_copilot_space - Obtener espacio de Copilot
owner: El propietario del espacio. (cadena, obligatorio)
name: El nombre del espacio. (cadena, obligatorio)
list_copilot_spaces - Listar espacios de Copilot
Búsqueda de documentos de soporte de GitHub
github_support_docs_search - Recuperar documentación relevante para responder preguntas de 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 solicitudes de extracción, mantenimiento de repositorios, GitHub Pages, GitHub Packages, GitHub Discussions, Copilot Spaces
query: Entrada del usuario sobre la pregunta que necesita respuesta. Este es el último mensaje de 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 de repositorios, problemas, solicitudes de extracción, etc.
./github-mcp-server --read-only
Cuando se usa Docker, puedes pasar el modo de solo lectura como una variable de entorno:
El modo de bloqueo limita el contenido que el servidor mostrará de los repositorios públicos. Cuando está habilitado, el servidor verifica si el autor de cada elemento tiene acceso de push al repositorio. Los repositorios privados no se ven afectados y los colaboradores mantienen acceso completo a su propio contenido.
El modo de bloqueo es un filtro de contenido de mejor esfuerzo destinado a reducir el riesgo de inyección de prompts desde contenido de repositorios no confiable (problemas, solicitudes de extracción, comentarios, confirmaciones, etc.). No es un límite de autorización: no cambia lo que la credencial de GitHub subyacente puede leer o escribir, y el contenido retenido de una respuesta de herramienta filtrada puede seguir siendo accesible a través de otras herramientas o acceso directo a la API de GitHub con la misma credencial.
Como excepción intencional, el contenido creado por un pequeño conjunto de cuentas de bots confiables (actualmente github-actions[bot] y copilot) siempre se trata como seguro, independientemente del acceso de push. Esto evita filtrar la salida de automatización rutinaria (p. ej., confirmaciones o comentarios generados por CI) que de otro modo se retendrían bajo el modo de bloqueo.
./github-mcp-server --lockdown-mode
Cuando se ejecuta con Docker, establece la variable de entorno correspondiente:
En modo HTTP, esta bandera (o GITHUB_LOCKDOWN_MODE) es un límite superior: el encabezado de solicitud X-MCP-Lockdown puede habilitar el modo de bloqueo cuando el operador no lo ha hecho, pero no puede deshabilitar el modo de bloqueo que el operador ya ha habilitado. Consulta la Guía de configuración del servidor para obtener más detalles.
El comportamiento del modo de bloqueo depende de la herramienta invocada.
Las siguientes herramientas devolverán un error cuando el autor no tenga acceso de push:
issue_read:get
pull_request_read:get
pull_request_read:get_diff
pull_request_read:get_files
pull_request_read:get_commits
Las siguientes herramientas filtrarán el contenido de usuarios que no tengan acceso de push:
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 / Anulación de descripciones
Las descripciones de las herramientas se pueden anular 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 conservará cualquier traducción/anulación que hayas realizado, mientras agrega
cualquier traducción nueva que se haya agregado al binario desde la última vez que
exportaste.
También puedes usar variables de entorno para anular 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 anular 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"
Anulación del nombre y título del servidor
El mismo mecanismo de anulación se puede usar para personalizar los campos name y
title del servidor MCP en la respuesta de inicialización. Esto es útil cuando se ejecutan
múltiples instancias del servidor MCP de GitHub (p. ej., una para github.com y otra para
GitHub Enterprise Server) para que los agentes puedan distinguirlas.
Clave
Variable de entorno
Predeterminado
SERVER_NAME
GITHUB_MCP_SERVER_NAME
github-mcp-server
SERVER_TITLE
GITHUB_MCP_SERVER_TITLE
GitHub MCP Server
Por ejemplo, para configurar una instancia del servidor para GitHub Enterprise Server:
La API de Go exportada de este módulo debe considerarse actualmente inestable y sujeta a cambios importantes. En el futuro, podemos ofrecer estabilidad; por favor, abre un problema si hay un caso de uso donde esto sería valioso.
Contribuciones
Las contribuciones son bienvenidas. Antes de abrir una solicitud de extracción, 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 con el servidor MCP de GitHub, consulta la guía de soporte. Si has encontrado un error o deseas solicitar una función, busca en los problemas existentes antes de abrir uno nuevo.
Seguridad
No informes vulnerabilidades de seguridad a través de problemas públicos. Sigue las instrucciones de la política de seguridad para informar vulnerabilidades de manera responsable.
Licencia
Este proyecto está licenciado bajo los términos de la licencia de código abierto MIT. Consulta MIT para conocer los términos completos.