Git MCP

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Supports configuration through environment variables that can be set directly or through a .env file, particularly for specifying the path to Git repositories.

  • Provides tools for managing local Git repositories, including listing repositories, retrieving and creating tags, listing commits, pushing tags to remote repositories, and refreshing repositories by pulling from remotes.

Git MCP

Servidor MCP para administrar operaciones de Git en repositorios locales.

Instalación

Instalación mediante herrería

Para instalar Git MCP para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @kjozsa/git-mcp --client claude

Instalación manual

uvx install git-mcp

Configuración

Agregue el servidor MCP utilizando el siguiente fragmento de configuración JSON:

{ "mcpServers": { "git-mcp": { "command": "uvx", "args": ["git-mcp"], "env": { "GIT_REPOS_PATH": "/path/to/your/git/repositories" } } } }

Características y uso

Variables de entorno

  • GIT_REPOS_PATH : Ruta al directorio que contiene sus repositorios Git (obligatorio)

Puede configurar esto en su entorno o crear un archivo .env en el directorio donde ejecuta el servidor.

Métodos disponibles

lista_de_repositorios

Enumera todos los repositorios Git en la ruta configurada.

  • Parámetros: Ninguno
  • Devuelve: Lista de nombres de repositorios

obtener_última_etiqueta_git

Encuentra la última etiqueta Git en el repositorio especificado.

  • Parámetros: repo_name (nombre del repositorio Git)
  • Devuelve: Diccionario con version (nombre de la etiqueta) y date (fecha de creación de la etiqueta)

lista_de_confirmaciones_desde_la_última_etiqueta

Enumera los mensajes de confirmación entre la última etiqueta Git y HEAD.

  • Parámetros:
    • repo_name : Nombre del repositorio Git
    • max_count (opcional): Número máximo de confirmaciones a devolver
  • Devuelve: Lista de diccionarios con hash , author , date y message

crear_etiqueta_git

Crea una nueva etiqueta git en el repositorio especificado.

  • Parámetros:
    • repo_name : Nombre del repositorio git
    • tag_name : Nombre de la etiqueta a crear
    • message (opcional): Mensaje para la etiqueta anotada (si no se proporciona, crea una etiqueta liviana)
  • Devuelve: Diccionario con status , version (nombre de la etiqueta), date (fecha de creación de la etiqueta) y type (anotado o ligero)

etiqueta_de_git_push

Envía una etiqueta git existente al repositorio remoto predeterminado.

  • Parámetros:
    • repo_name : Nombre del repositorio git
    • tag_name : Nombre de la etiqueta a enviar
  • Devuelve: Diccionario con status , remote (nombre del control remoto), tag (nombre de la etiqueta) y message (mensaje de éxito)

actualizar_repositorio

Actualiza un repositorio extrayendo la rama principal (o master como respaldo) y extrayendo desde todos los remotos.

  • Parámetros:
    • repo_name : Nombre del repositorio git
  • Devuelve: Diccionario con status , repository , branch y pull_results (resultados para cada control remoto)

Solución de problemas

  • Repositorio no encontrado : asegúrese de que GIT_REPOS_PATH esté configurado correctamente y que el repositorio exista
  • No se encontraron etiquetas : el repositorio aún no tiene etiquetas

Desarrollo

# Install dependencies uv pip install -r requirements.txt # Run in dev mode with Inspector mcp dev git_mcp/server.py

Pruebas

El proyecto incluye dos scripts de prueba:

  1. test_git_mcp.py : prueba la funcionalidad del comando Git subyacente directamente, sin utilizar el servidor MCP.
  2. test_mcp_server.py : prueba la funcionalidad del servidor MCP iniciando una instancia de servidor y realizándole llamadas.

Para ejecutar las pruebas:

# Test the Git command functionality python test_git_mcp.py # Test the MCP server (requires the git-mcp package to be installed) python test_mcp_server.py

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Servidor MCP para administrar operaciones de Git en repositorios locales, permitiendo a los usuarios enumerar repositorios, obtener y crear etiquetas, enumerar confirmaciones, enviar etiquetas y actualizar repositorios a través de una interfaz estandarizada.

  1. Installation
    1. Installing via Smithery
    2. Installing Manually
  2. Configuration
    1. Features and Usage
      1. Environment Variables
      2. Available Methods
      3. Troubleshooting
    2. Development
      1. Testing
        ID: s9v9iezy1u