Git MCP Server
Un servidor MCP para realizar operaciones de Git e integrarse con GitHub.
GitHub
6
Prueba este MCPPatrocinadoDocumentación
Git MCP Server
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona operaciones Git mejoradas a través de una interfaz estandarizada. Este servidor se integra con el ecosistema MCP para proporcionar funcionalidad Git a asistentes de IA.
Características
- Operaciones Git principales: init, clone, status, add, commit, push, pull
- Gestión de ramas: listar, crear, eliminar, cambiar
- Operaciones de etiquetas: listar, crear, eliminar
- Gestión de remotos: listar, añadir, eliminar
- Operaciones de stash: listar, guardar, aplicar
- Acciones masivas: Ejecutar múltiples operaciones Git en secuencia
- Integración con GitHub: Soporte integrado de GitHub mediante Token de Acceso Personal
- Resolución de rutas: Manejo inteligente de rutas con configuración opcional de ruta predeterminada
- Manejo de errores: Manejo integral de errores con tipos de error personalizados
- Caché de repositorios: Gestión eficiente del estado del repositorio
- Monitoreo de rendimiento: Seguimiento de rendimiento integrado
Instalación
- Clonar el repositorio:
git clone https://github.com/yourusername/git-mcp-v2.git
cd git-mcp-v2
- Instalar dependencias:
npm install
- Compilar el proyecto:
npm run build
Configuración
Añadir al archivo de configuración de MCP:
{
"mcpServers": {
"git-v2": {
"command": "node",
"args": ["path/to/git-mcp-v2/build/index.js"],
"env": {
"GIT_DEFAULT_PATH": "/path/to/default/git/directory",
"GITHUB_PERSONAL_ACCESS_TOKEN": "your-github-pat"
}
}
}
}
Variables de entorno
GIT_DEFAULT_PATH: (Opcional) Ruta predeterminada para operaciones GitGITHUB_PERSONAL_ACCESS_TOKEN: (Opcional) Token de Acceso Personal de GitHub para operaciones de GitHub
Herramientas disponibles
Operaciones básicas
init: Inicializar un nuevo repositorio Gitclone: Clonar un repositoriostatus: Obtener el estado del repositorioadd: Preparar archivoscommit: Crear un commitpush: Enviar commits al remotopull: Obtener cambios del remoto
Operaciones de ramas
branch_list: Listar todas las ramasbranch_create: Crear una nueva ramabranch_delete: Eliminar una ramacheckout: Cambiar de rama o restaurar archivos del árbol de trabajo
Operaciones de etiquetas
tag_list: Listar etiquetastag_create: Crear una etiquetatag_delete: Eliminar una etiqueta
Operaciones de remotos
remote_list: Listar remotosremote_add: Añadir un remotoremote_remove: Eliminar un remoto
Operaciones de stash
stash_list: Listar stashesstash_save: Guardar cambios en el stashstash_pop: Aplicar y eliminar un stash
Operaciones masivas
bulk_action: Ejecutar múltiples operaciones Git en secuencia
Desarrollo
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
# Run linter
npm run lint
# Format code
npm run format
Licencia
MIT
Contribuciones
- Hacer un fork del repositorio
- Crear tu rama de características (
git checkout -b feature/amazing-feature) - Confirmar tus cambios (
git commit -m 'Add some amazing feature') - Enviar a la rama (
git push origin feature/amazing-feature) - Abrir una Solicitud de Extracción