Skip to main content
Glama

Servidor MCP de GitHub

Servidor MCP para la API de GitHub, que permite operaciones de archivos, gestión de repositorios, funcionalidad de búsqueda y más.

Características

  • Creación automática de ramas : al crear o actualizar archivos o enviar cambios, las ramas se crean automáticamente si no existen.

  • Manejo integral de errores : mensajes de error claros para problemas comunes

  • Preservación del historial de Git : las operaciones mantienen el historial de Git adecuado sin forzar el envío.

  • Operaciones por lotes : compatibilidad con operaciones de un solo archivo y de varios archivos

  • Búsqueda avanzada : Soporte para búsqueda de código, problemas/PR y usuarios

Herramientas

  1. create_or_update_file

    • Crear o actualizar un solo archivo en un repositorio

    • Entradas:

      • owner (cadena): propietario del repositorio (nombre de usuario u organización)

      • repo (cadena): nombre del repositorio

      • path (cadena): Ruta donde crear/actualizar el archivo

      • content (cadena): Contenido del archivo

      • message (cadena): Mensaje de confirmación

      • branch (cadena): Rama para crear/actualizar el archivo en

      • sha (cadena opcional): SHA del archivo que se va a reemplazar (para actualizaciones)

    • Devuelve: Contenido del archivo y detalles de confirmación

  2. push_files

    • Insertar varios archivos en una sola confirmación

    • Entradas:

      • owner (cadena): Propietario del repositorio

      • repo (cadena): nombre del repositorio

      • branch (cadena): Rama a la que enviar

      • files (matriz): archivos para enviar, cada uno con path y content

      • message (cadena): Mensaje de confirmación

    • Devoluciones: Referencia de rama actualizada

  3. search_repositories

    • Buscar repositorios de GitHub

    • Entradas:

      • query (cadena): consulta de búsqueda

      • page (número opcional): Número de página para paginación

      • perPage (número opcional): Resultados por página (máximo 100)

    • Devuelve: Resultados de la búsqueda del repositorio

  4. create_repository

    • Crear un nuevo repositorio de GitHub

    • Entradas:

      • name (cadena): nombre del repositorio

      • description (cadena opcional): Descripción del repositorio

      • private (booleano opcional): si el repositorio debe ser privado

      • autoInit (booleano opcional): inicializar con README

    • Devoluciones: Detalles del repositorio creado

  5. get_file_contents

    • Obtener el contenido de un archivo o directorio

    • Entradas:

      • owner (cadena): Propietario del repositorio

      • repo (cadena): nombre del repositorio

      • path (cadena): Ruta al archivo/directorio

      • branch (cadena opcional): rama de la que obtener el contenido

    • Devuelve: Contenido del archivo/directorio

  6. create_issue

    • Crear un nuevo problema

    • Entradas:

      • owner (cadena): Propietario del repositorio

      • repo (cadena): nombre del repositorio

      • title (cadena): Título del problema

      • body (cadena opcional): Descripción del problema

      • assignees (cadena opcional[]): nombres de usuario para asignar

      • labels (cadena opcional[]): etiquetas para agregar

      • milestone (número opcional): Número de hito

    • Devoluciones: Detalles del problema creado

  7. create_pull_request

    • Crear una nueva solicitud de extracción

    • Entradas:

      • owner (cadena): Propietario del repositorio

      • repo (cadena): nombre del repositorio

      • title (cadena): título de PR

      • body (cadena opcional): descripción de PR

      • head (cadena): rama que contiene los cambios

      • base (cadena): rama en la que fusionarse

      • draft (booleano opcional): Crear como borrador de PR

      • maintainer_can_modify (booleano opcional): Permitir ediciones del mantenedor

    • Devoluciones: Detalles de la solicitud de extracción creada

  8. fork_repository

    • Bifurcar un repositorio

    • Entradas:

      • owner (cadena): Propietario del repositorio

      • repo (cadena): nombre del repositorio

      • organization (cadena opcional): Organización a la que se bifurcará

    • Devoluciones: Detalles del repositorio bifurcado

  9. create_branch

    • Crear una nueva rama

    • Entradas:

      • owner (cadena): Propietario del repositorio

      • repo (cadena): nombre del repositorio

      • branch (cadena): Nombre de la nueva rama

      • from_branch (cadena opcional): rama de origen (predeterminada al valor predeterminado del repositorio)

    • Devuelve: Referencia de rama creada

  10. list_issues

  • Enumerar y filtrar problemas del repositorio

  • Entradas:

    • owner (cadena): Propietario del repositorio

    • repo (cadena): nombre del repositorio

    • state (cadena opcional): filtrar por estado ('abierto', 'cerrado', 'todos')

    • labels (cadena opcional[]): Filtrar por etiquetas

    • sort (cadena opcional): Ordenar por ('creado', 'actualizado', 'comentarios')

    • direction (cadena opcional): Ordenar dirección ('asc', 'desc')

    • since (cadena opcional): Filtrar por fecha (marca de tiempo ISO 8601)

    • page (número opcional): Número de página

    • per_page (número opcional): Resultados por página

  • Devoluciones: Matriz de detalles del problema

  1. update_issue

  • Actualizar un problema existente

  • Entradas:

    • owner (cadena): Propietario del repositorio

    • repo (cadena): nombre del repositorio

    • issue_number (número): Número de problema a actualizar

    • title (cadena opcional): Nuevo título

    • body (cadena opcional): Nueva descripción

    • state (cadena opcional): Nuevo estado ('abierto' o 'cerrado')

    • labels (cadena opcional[]): Nuevas etiquetas

    • assignees (cadena opcional[]): nuevos cesionarios

    • milestone (número opcional): Nuevo número de hito

  • Devoluciones: Detalles del problema actualizados

  1. add_issue_comment

  • Agregar un comentario a un problema

  • Entradas:

    • owner (cadena): Propietario del repositorio

    • repo (cadena): nombre del repositorio

    • issue_number (número): Número de problema sobre el que se realizará el comentario

    • body (cadena): Texto del comentario

  • Devoluciones: Detalles del comentario creado

  1. search_code

  • Buscar código en los repositorios de GitHub

  • Entradas:

    • q (cadena): consulta de búsqueda utilizando la sintaxis de búsqueda de código de GitHub

    • sort (cadena opcional): campo de ordenación (solo 'indexado')

    • order (cadena opcional): orden de clasificación ('asc' o 'desc')

    • per_page (número opcional): Resultados por página (máximo 100)

    • page (número opcional): Número de página

  • Devuelve: Resultados de búsqueda de código con contexto de repositorio

  1. search_issues

  • Buscar problemas y solicitudes de extracción

  • Entradas:

    • q (cadena): consulta de búsqueda que utiliza la sintaxis de búsqueda de problemas de GitHub

    • sort (cadena opcional): campo de ordenación (comentarios, reacciones, creados, etc.)

    • order (cadena opcional): orden de clasificación ('asc' o 'desc')

    • per_page (número opcional): Resultados por página (máximo 100)

    • page (número opcional): Número de página

  • Devoluciones: Resultados de búsqueda de problemas y solicitudes de extracción

  1. search_users

  • Buscar usuarios de GitHub

  • Entradas:

    • q (cadena): consulta de búsqueda que utiliza la sintaxis de búsqueda de usuarios de GitHub

    • sort (cadena opcional): campo de ordenación (seguidores, repositorios, unidos)

    • order (cadena opcional): orden de clasificación ('asc' o 'desc')

    • per_page (número opcional): Resultados por página (máximo 100)

    • page (número opcional): Número de página

  • Devuelve: Resultados de búsqueda del usuario

  1. list_commits

  • Obtiene confirmaciones de una rama en un repositorio

  • Entradas:

    • owner (cadena): Propietario del repositorio

    • repo (cadena): nombre del repositorio

    • page (cadena opcional): número de página

    • per_page (cadena opcional): número de registros por página

    • sha (cadena opcional): nombre de la rama

  • Devuelve: Lista de confirmaciones

  1. get_issue

  • Obtiene el contenido de un problema dentro de un repositorio

  • Entradas:

    • owner (cadena): Propietario del repositorio

    • repo (cadena): nombre del repositorio

    • issue_number (número): Número de problema a recuperar

  • Devoluciones: objeto de problema de Github y detalles

  1. get_issue_comments

  • Obtiene los comentarios sobre un problema o una solicitud de extracción.

  • Entradas:

    • owner (cadena): Propietario del repositorio

    • repo (cadena): nombre del repositorio

    • issue_number (número): Número de problema/PR del que recuperar comentarios

  • Devoluciones: Matriz de objetos de comentarios de GitHub que contienen el ID del comentario, el texto del cuerpo, el autor y las marcas de tiempo

Related MCP server: GitHub MCP Server

Sintaxis de consulta de búsqueda

Búsqueda de código

  • language:javascript : Buscar por lenguaje de programación

  • repo:owner/name : Buscar en un repositorio específico

  • path:app/src : Buscar en una ruta específica

  • extension:js : Buscar por extensión de archivo

  • Ejemplo: q: "import express" language:typescript path:src/

Búsqueda de problemas

  • is:issue o is:pr : Filtrar por tipo

  • is:open o is:closed : Filtrar por estado

  • label:bug : Buscar por etiqueta

  • author:username : Buscar por autor

  • Ejemplo: q: "memory leak" is:issue is:open label:bug

Búsqueda de usuarios

  • type:user o type:org : Filtrar por tipo de cuenta

  • followers:>1000 : Filtrar por seguidores

  • location:London : Buscar por ubicación

  • Ejemplo: q: "fullstack developer" location:London followers:>100

Para conocer la sintaxis de búsqueda detallada, consulte la documentación de búsqueda de GitHub .

Configuración

Token de acceso personal

Cree un token de acceso personal de GitHub con los permisos adecuados:

  • Vaya a Tokens de acceso personal (en Configuración de GitHub > Configuración de desarrollador)

  • Seleccione los repositorios a los que desea que este token tenga acceso (Público, Todos o Seleccionar)

  • Crea un token con el alcance repo ("Control total de repositorios privados")

    • Alternativamente, si trabaja solo con repositorios públicos, seleccione solo el ámbito public_repo

  • Copiar el token generado

Uso con Claude Desktop

Para usar esto con Claude Desktop, agregue lo siguiente a su claude_desktop_config.json :

{ "mcpServers": { "github": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-github" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>" } } } }

Licencia

Este servidor MCP cuenta con la licencia MIT. Esto significa que puede usar, modificar y distribuir el software libremente, sujeto a los términos y condiciones de la licencia MIT. Para más detalles, consulte el archivo de LICENCIA en el repositorio del proyecto.

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/asbloom-py/mcp-servers'

If you have feedback or need assistance with the MCP directory API, please join our Discord server