VOOZH about

URL: https://glama.ai/mcp/servers/bsreeram08/git-commands-mcp?locale=es-ES

⇱ Navegador de repositorios Git MCP by bsreeram08 | Glama


Navegador de repositorios Git de MCP (Node.js)

Una implementación de Node.js de un navegador de repositorio Git utilizando el Protocolo de Contexto de Modelo (MCP).

👁 Repositorio de GitHub
👁 paquete npm

Instalación

NPM (Recomendado)

npm install -g git-commands-mcp

Instalación manual

git clone https://github.com/bsreeram08/git-commands-mcp.git
cd git-commands-mcp
npm install

Related MCP server: MCP Git Repo Browser

Configuración

Agregue esto a su archivo de configuración de MCP:

{
 "mcpServers": {
 "git-commands-mcp": {
 "command": "git-commands-mcp"
 }
 }
}

Para la instalación manual, utilice:

{
 "mcpServers": {
 "git-commands-mcp": {
 "command": "node",
 "args": ["/path/to/git-commands-mcp/src/index.js"]
 }
 }
}

Características

El servidor proporciona las siguientes herramientas:

Operaciones básicas del repositorio

  1. git_directory_structure : Devuelve una representación en forma de árbol de la estructura de directorios de un repositorio

    • Entrada: URL del repositorio

    • Salida: Representación en árbol ASCII de la estructura del repositorio

  2. git_read_files : lee y devuelve el contenido de los archivos especificados en un repositorio

    • Entrada: URL del repositorio y lista de rutas de archivos

    • Salida: Diccionario que asigna rutas de archivos a sus contenidos

  3. git_search_code : busca patrones en el código del repositorio

    • Entrada: URL del repositorio, patrón de búsqueda, patrones de archivo opcionales, distinción entre mayúsculas y minúsculas y líneas de contexto

    • Salida: JSON con resultados de búsqueda que incluyen líneas coincidentes y contexto

Operaciones de sucursal

  1. git_branch_diff : Compara dos ramas y muestra los archivos modificados entre ellas

    • Entrada: URL del repositorio, rama de origen, rama de destino y bandera show_patch opcional

    • Salida: JSON con recuento de confirmaciones y resumen de diferencias

Operaciones de confirmación

  1. git_commit_history : obtiene el historial de confirmaciones de una rama con filtrado opcional

    • Entrada: URL del repositorio, nombre de la rama, recuento máximo, filtro de autor, fecha de inicio, fecha de finalización y mensaje grep

    • Salida: JSON con detalles de confirmación

  2. git_commits_details : Obtenga información detallada sobre las confirmaciones, incluidos mensajes completos y diferencias

    • Entrada: URL del repositorio, nombre de la rama, recuento máximo, indicador include_diff, filtro de autor, fecha de inicio, fecha de finalización y mensaje grep

    • Salida: JSON con información detallada de confirmación

  3. git_local_changes : Obtener cambios no confirmados en el directorio de trabajo

    • Entrada: Ruta del repositorio local

    • Salida: JSON con información de estado y diferencias

Estructura del proyecto

git-commands-mcp/
├── src/
│ ├── index.js # Entry point
│ ├── server.js # Main server implementation
│ ├── handlers/ # Tool handlers
│ │ └── index.js # Tool implementation functions
│ └── utils/ # Utility functions
│ └── git.js # Git-related helper functions
├── package.json
└── readme.md

Detalles de implementación

  • Utiliza módulos nativos de Node.js (crypto, path, os) para la funcionalidad principal

  • Aprovecha fs-extra para mejorar las operaciones con archivos

  • Utiliza simple-git para operaciones del repositorio Git

  • Implementa un manejo limpio de errores y limpieza de recursos.

  • Crea directorios temporales deterministas basados en hashes de URL del repositorio

  • Reutiliza repositorios clonados cuando sea posible para mayor eficiencia

  • Estructura de código modular para una mejor mantenibilidad

Requisitos

  • Node.js 14.x o superior

  • Git instalado en el sistema

Uso

Si se instala globalmente a través de npm:

git-commands-mcp

Si se instala manualmente:

node src/index.js

El servidor se ejecuta en stdio, lo que lo hace compatible con los clientes MCP.

CI/CD

Este proyecto utiliza GitHub Actions para la integración y la implementación continuas:

Publicación automática de NPM

El repositorio está configurado con un flujo de trabajo de GitHub Actions que publica automáticamente el paquete en npm cuando se envían cambios a la rama maestra.

Configuración de NPM_AUTOMATION_TOKEN

Para habilitar la publicación automática, debes agregar un token de automatización npm como un secreto de GitHub (esto funciona incluso con cuentas que tienen 2FA habilitado):

  1. Generar un token de automatización npm:

    • Inicie sesión en su cuenta npm en npmjs.com

    • Ve a la configuración de tu perfil

    • Seleccione "Tokens de acceso"

    • Haga clic en "Generar nuevo token"

    • Seleccione el tipo de token "Automatización"

    • Establezca los permisos adecuados (se requiere "Leer y escribir" para los paquetes)

    • Copiar el token generado

  2. Añade el token a tu repositorio de GitHub:

    • Vaya a su repositorio de GitHub

    • Vaya a "Configuración" > "Secretos y variables" > "Acciones".

    • Haga clic en "Nuevo secreto del repositorio".

    • Nombre: NPM_AUTOMATION_TOKEN

    • Valor: Pegue su token de automatización npm

    • Haga clic en "Agregar secreto"

Una vez configurado, cualquier envío a la rama maestra activará el flujo de trabajo para publicar el paquete en npm.

Licencia

Licencia MIT: consulte el archivo LICENCIA para obtener más detalles.

Campo de golf

A
license - permissive license
B
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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/bsreeram08/git-commands-mcp'

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