git MCP server

local-only server

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

Integrations

  • Provides tools to read, search, and manipulate Git repositories via Large Language Models. Includes functionalities for viewing git status, diffs, committing changes, managing branches, and other git operations.

mcp-server-git: Un servidor MCP git

Descripción general

Un servidor de Protocolo de Contexto de Modelo para la interacción y automatización de repositorios Git. Este servidor proporciona herramientas para leer, buscar y manipular repositorios Git mediante Modelos de Lenguaje Grandes.

Tenga en cuenta que mcp-server-git se encuentra actualmente en desarrollo inicial. La funcionalidad y las herramientas disponibles están sujetas a cambios y ampliaciones a medida que continuamos desarrollando y mejorando el servidor.

Herramientas

  1. git_status
    • Muestra el estado del árbol de trabajo.
    • Aporte:
      • repo_path (cadena): Ruta al repositorio de Git
    • Devuelve: Estado actual del directorio de trabajo como salida de texto
  2. git_diff_unstaged
    • Muestra los cambios en el directorio de trabajo que aún no se han preparado
    • Aporte:
      • repo_path (cadena): Ruta al repositorio de Git
    • Devuelve: Salida diferencial de cambios no preparados
  3. git_diff_staged
    • Muestra los cambios que están preparados para confirmarse
    • Aporte:
      • repo_path (cadena): Ruta al repositorio de Git
    • Devuelve: Salida diferencial de los cambios programados
  4. git_diff
    • Muestra diferencias entre ramas o confirmaciones
    • Entradas:
      • repo_path (cadena): Ruta al repositorio de Git
      • target (cadena): rama de destino o confirmación con la que comparar
    • Devuelve: Salida diferencial que compara el estado actual con el objetivo
  5. git_commit
    • Registra los cambios en el repositorio
    • Entradas:
      • repo_path (cadena): Ruta al repositorio de Git
      • message (cadena): Mensaje de confirmación
    • Devoluciones: Confirmación con nuevo hash de confirmación
  6. git_add
    • Agrega contenido de archivo al área de preparación
    • Entradas:
      • repo_path (cadena): Ruta al repositorio de Git
      • files (cadena[]): Matriz de rutas de archivos a la etapa
    • Devoluciones: Confirmación de archivos preparados
  7. git_reset
    • Desactiva todos los cambios programados
    • Aporte:
      • repo_path (cadena): Ruta al repositorio de Git
    • Devoluciones: Confirmación de la operación de reinicio
  8. git_log
    • Muestra los registros de confirmación
    • Entradas:
      • repo_path (cadena): Ruta al repositorio de Git
      • max_count (número, opcional): Número máximo de confirmaciones a mostrar (predeterminado: 10)
    • Devuelve: Matriz de entradas de confirmación con hash, autor, fecha y mensaje
  9. git_create_branch
    • Crea una nueva rama
    • Entradas:
      • repo_path (cadena): Ruta al repositorio de Git
      • branch_name (cadena): Nombre de la nueva rama
      • start_point (cadena, opcional): Punto de inicio para la nueva rama
    • Devoluciones: Confirmación de creación de rama
  10. git_checkout
  • Cambia de rama
  • Entradas:
    • repo_path (cadena): Ruta al repositorio de Git
    • branch_name (cadena): Nombre de la sucursal a verificar
  • Devoluciones: Confirmación de cambio de rama
  1. git_show
  • Muestra el contenido de una confirmación
  • Entradas:
    • repo_path (cadena): Ruta al repositorio de Git
    • revision (cadena): La revisión (hash de confirmación, nombre de la rama, etiqueta) para mostrar
  • Devuelve: Contenido de la confirmación especificada
  1. git_init
  • Inicializa un repositorio Git
  • Entradas:
    • repo_path (cadena): Ruta al directorio para inicializar el repositorio git
  • Devuelve: Confirmación de inicialización del repositorio

Instalación

Uso de uv (recomendado)

Al usar uv no se requiere ninguna instalación específica. Usaremos uvx para ejecutar directamente mcp-server-git .

Uso de PIP

Alternativamente, puede instalar mcp-server-git a través de pip:

pip install mcp-server-git

Después de la instalación, puedes ejecutarlo como un script usando:

python -m mcp_server_git

Configuración

Uso con Claude Desktop

Agregue esto a su claude_desktop_config.json :

"mcpServers": { "git": { "command": "uvx", "args": ["mcp-server-git", "--repository", "path/to/git/repo"] } }
  • Nota: reemplace '/Users/username' con la ruta a la que desea que esta herramienta pueda acceder
"mcpServers": { "git": { "command": "docker", "args": ["run", "--rm", "-i", "--mount", "type=bind,src=/Users/username,dst=/Users/username", "mcp/git"] } }
"mcpServers": { "git": { "command": "python", "args": ["-m", "mcp_server_git", "--repository", "path/to/git/repo"] } }

Uso con Zed

Añade a tu configuración Zed settings.json:

"context_servers": [ "mcp-server-git": { "command": { "path": "uvx", "args": ["mcp-server-git"] } } ],
"context_servers": { "mcp-server-git": { "command": { "path": "python", "args": ["-m", "mcp_server_git"] } } },

Depuración

Puede usar el inspector MCP para depurar el servidor. Para instalaciones uvx:

npx @modelcontextprotocol/inspector uvx mcp-server-git

O si ha instalado el paquete en un directorio específico o está desarrollando en él:

cd path/to/servers/src/git npx @modelcontextprotocol/inspector uv run mcp-server-git

Ejecutar tail -n 20 -f ~/Library/Logs/Claude/mcp*.log mostrará los registros del servidor y puede ayudarlo a depurar cualquier problema.

Desarrollo

Si está realizando un desarrollo local, hay dos formas de probar sus cambios:

  1. Ejecute el inspector de MCP para probar los cambios. Consulte Depuración para obtener instrucciones de ejecución.
  2. Prueba con la aplicación de escritorio Claude. Agrega lo siguiente a tu claude_desktop_config.json :

Estibador

{ "mcpServers": { "git": { "command": "docker", "args": [ "run", "--rm", "-i", "--mount", "type=bind,src=/Users/username/Desktop,dst=/projects/Desktop", "--mount", "type=bind,src=/path/to/other/allowed/dir,dst=/projects/other/allowed/dir,ro", "--mount", "type=bind,src=/path/to/file.txt,dst=/projects/path/to/file.txt", "mcp/git" ] } } }

UVX

{ "mcpServers": { "git": { "command": "uv", "args": [ "--directory", "/<path to mcp-servers>/mcp-servers/src/git", "run", "mcp-server-git" ] } }

Construir

Compilación de Docker:

cd src/git docker build -t mcp/git .

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
A
license - permissive license
-
quality - not tested

Un servidor de Protocolo de Contexto de Modelo para la interacción y automatización de repositorios Git. Este servidor proporciona herramientas para leer, buscar y manipular repositorios Git mediante Modelos de Lenguaje Grandes.

  1. Overview
    1. Tools
  2. Installation
    1. Using uv (recommended)
    2. Using PIP
  3. Configuration
    1. Usage with Claude Desktop
    2. Usage with Zed
  4. Debugging
    1. Development
      1. Docker
      2. UVX
    2. Build
      1. License
        ID: 2sijuvbdae