Herramientas MCP de GitHub
Un programa multi-Claude (MCP) para interactuar con las API de GitHub a través de Claude Desktop.
Características
Buscar repositorios y problemas de GitHub
Crear, actualizar y administrar problemas y solicitudes de extracción de GitHub
Administrar configuraciones y ajustes del repositorio
Gestionar flujos de trabajo y acciones del repositorio
Búsqueda de usuarios y organizaciones
Administrar colaboradores y equipos del repositorio
Related MCP server: GitHub MCP Server
Instalación
Clonar este repositorio:
git clone https://github.com/yourusername/github-mcp.git cd github-mcpCrear y activar un entorno virtual:
# On macOS/Linux python -m venv venv source venv/bin/activate # On Windows python -m venv venv .\venv\Scripts\activateInstalar dependencias:
pip install -r requirements.txtCree un archivo
.enven la raíz del proyecto:touch .envAgregue sus credenciales de GitHub al archivo
.env:GITHUB_TOKEN=your_personal_access_token_here GITHUB_USERNAME=your_github_usernamePruebe la instalación:
# Run all tests python -m pytest # Run a specific test file python -m pytest tests/test_search_repos.pyInicie el servidor MCP:
python run.py
Configuración del entorno
Token de acceso personal de GitHub
Necesitará un token de acceso personal detallado para autenticarse con GitHub:
Inicia sesión en tu cuenta de GitHub
Vaya a Configuración > Configuración de desarrollador > Tokens de acceso personal > Tokens de granularidad fina
Haga clic en "Generar nuevo token"
Configurar el token:
Nombre del token: "Integración de escritorio de Claude"
Descripción: "Token para la integración de GitHub con Claude Desktop"
Caducidad: Elija una fecha de caducidad adecuada
Acceso al repositorio: seleccione "Todos los repositorios" o repositorios específicos
Permisos:
Permisos del repositorio:
Acciones: Leer y escribir
Contenidos: Leer y escribir
Problemas: Leer y escribir
Solicitudes de extracción: lectura y escritura
Ganchos del repositorio: lectura y escritura
Configuración del repositorio: lectura y escritura
Permisos de la organización (si se trabaja con repositorios de la organización):
Miembros: Sólo lectura
Equipos: solo lectura
Haga clic en "Generar token" y guarde el token generado de forma segura.
Herramientas
Buscar repositorios
Busque repositorios de GitHub utilizando varios criterios.
Parámetros:
consulta: cadena de consulta de búsqueda
ordenar: campo de ordenación (estrellas, bifurcaciones, actualizado, etc.)
orden: Orden de clasificación (ascendente o descendente)
max_results: Número máximo de resultados a devolver (predeterminado: 10)
Crear problema
Crea un nuevo problema de GitHub en un repositorio específico.
Parámetros:
propietario: Propietario del repositorio
repo: Nombre del repositorio
título: Título del número
cuerpo: Descripción del problema
etiquetas: Lista de etiquetas a aplicar
cesionarios: Lista de nombres de usuario de los cesionarios
Crear solicitud de extracción
Crear una nueva solicitud de extracción.
Parámetros:
propietario: Propietario del repositorio
repo: Nombre del repositorio
título: Título de relaciones públicas
cuerpo: descripción de relaciones públicas
cabeza: rama fuente
base: rama de destino
borrador: si se creará como borrador de PR
Administrar la configuración del repositorio
Actualizar la configuración y los ajustes del repositorio.
Parámetros:
propietario: Propietario del repositorio
repo: Nombre del repositorio
Ajustes: Diccionario de ajustes para actualizar
Problemas de búsqueda
Busque problemas en todos los repositorios.
Parámetros:
consulta: cadena de consulta de búsqueda
estado: Estado del problema (abierto, cerrado, todos)
sort: Ordenar campo
orden: Orden de clasificación
max_results: Número máximo de resultados
Administrar flujos de trabajo
Administrar flujos de trabajo de GitHub Actions.
Parámetros:
propietario: Propietario del repositorio
repo: Nombre del repositorio
workflow_file: Ruta del archivo de flujo de trabajo
acción: Acción a realizar (habilitar, deshabilitar, activar)
Administrar colaboradores
Administrar colaboradores del repositorio.
Parámetros:
propietario: Propietario del repositorio
repo: Nombre del repositorio
nombre de usuario: Nombre de usuario del colaborador
Permiso: Nivel de permiso (extraer, enviar, administrar, mantener, triaje)
Ejemplo de uso
Desarrollo
Ejecución de pruebas
Agregar nuevas herramientas
Crea un nuevo archivo en
src/tools/Implemente la función de su herramienta
Registra la herramienta en
src/main.pyAñadir pruebas en
tests/Actualizar la documentación en README.md
Contribuyendo
Bifurcar el repositorio
Crear una rama de características
Realiza tus cambios
Ejecutar pruebas
Enviar una solicitud de extracción
Licencia
Licencia MIT