GitLab CLI MCP Server
Integre assistentes de IA perfeitamente com o GitLab usando a ferramenta de linha de comando glab.
GitHub
1
Experimente este MCPPatrocinadoDocumentação
GitLab MCP Server (Swift)
Um servidor Model Context Protocol (MCP) que encapsula o GitLab CLI (glab) para fornecer funcionalidades do GitLab a assistentes de IA como o Claude Desktop.
Recursos
- 🚀 Implementação nativa em Swift usando o SDK Swift do MCP oficial
- 🔧 Integração completa com o GitLab CLI - suporta todos os comandos
glab - 🎯 Prompts inteligentes para fluxos de trabalho comuns (merge requests, CI/CD, standup diário)
- 📊 Análise de saída JSON com fallback para texto simples
- 🔐 Autenticação segura via credenciais do sistema
glab - ⚡ Alto desempenho com concorrência async/await do Swift
Pré-requisitos
- macOS (Swift 5.9+ instalado via Xcode)
- glab CLI instalado e autenticado
- Claude Desktop ou outro cliente compatível com MCP
Instalação
Instalação Rápida
# Clone the repository
git clone https://github.com/yourusername/gitlab-mcp-swift.git
cd gitlab-mcp-swift
# Run the install script
./install.sh
O script de instalação irá:
- Compilar o servidor usando o Swift Package Manager
- Instalá-lo em
~/.swiftpm/bin/git-lab-mcp - Exibir a configuração para o Claude Desktop
Instalação Manual
# Build the project
swift build -c release
# Install to a location in your PATH
cp .build/release/git-lab-mcp ~/.swiftpm/bin/
Configuração
Adicione à sua configuração do Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"gitlab": {
"command": "/Users/YOUR_USERNAME/.swiftpm/bin/git-lab-mcp",
"args": ["--log-level", "info"],
"env": {
"PATH": "/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin"
}
}
}
}
Autenticação
O servidor usa sua autenticação existente do glab CLI:
# Login to GitLab
glab auth login
# Check authentication status
glab auth status
Ferramentas Disponíveis
Ferramentas Principais
glab_mr- Operações de merge request (listar, criar, visualizar, mesclar, aprovar)glab_issue- Gerenciamento de issues (listar, criar, visualizar, fechar, atualizar)glab_ci- Operações de pipeline CI/CD (visualizar, listar, executar, repetir)glab_repo- Operações de repositório (clonar, fork, visualizar, arquivar)glab_api- Acesso direto à API do GitLabglab_auth- Gerenciamento de autenticaçãoglab_version- Informações de versãoglab_raw- Executar qualquer comando glab diretamente
Prompts
O servidor inclui prompts inteligentes para fluxos de trabalho comuns:
my-mrs- Verifique seus merge requestscreate-mr- Crie um merge request com parâmetros guiadosdaily-standup- Reúna a atividade do GitLab para standups diáriosreview-pipeline- Revise o status do pipeline CI/CD
Exemplos de Uso
Verificar seus Merge Requests
Use the prompt "my-mrs" to see all your open merge requests
Criar um Merge Request
Use the prompt "create-mr" with:
- title: "Fix: Memory leak in user service"
- source_branch: "fix/memory-leak"
- target_branch: "main"
Executar Pipeline CI/CD
Use tool "glab_ci" with:
- subcommand: "run"
- repo: "myteam/myproject"
Desenvolvimento
Compilação a partir do Código Fonte
# Clone the repository
git clone https://github.com/yourusername/gitlab-mcp-swift.git
cd gitlab-mcp-swift
# Build in debug mode
swift build
# Run tests
swift test
# Build for release
swift build -c release
Estrutura do Projeto
gitlab-mcp-swift/
├── Sources/
│ └── GitLabMCP/
│ ├── GitLabMCPServer.swift # Main server implementation
│ ├── GitLabMCPCommand.swift # CLI entry point
│ └── GitLabCLI.swift # GitLab CLI wrapper
├── Package.swift # Swift package manifest
├── install.sh # Installation script
└── README.md # This file
Solução de Problemas
O servidor não inicia
- Certifique-se de que o
glabesteja instalado:which glab - Verifique a autenticação:
glab auth status - Execute com log de depuração:
--log-level debug
Comandos retornam "não autenticado"
- Execute
glab auth loginpara autenticar - Para instâncias auto-hospedadas:
glab auth login --hostname your.gitlab.instance
Problemas de conexão MCP
- Reinicie o Claude Desktop após alterações de configuração
- Verifique os logs no console do desenvolvedor do Claude Desktop
- Verifique se o caminho do executável está correto na configuração
Contribuindo
Contribuições são bem-vindas! Por favor:
- Faça um fork do repositório
- Crie um branch de recurso
- Faça suas alterações
- Adicione testes, se aplicável
- Envie um pull request
Licença
Licença MIT - veja o arquivo LICENSE para detalhes
Agradecimentos
- Construído com o Model Context Protocol Swift SDK
- Encapsula o excelente GitLab CLI (glab)
- Inspirado pela necessidade de melhor integração com GitLab em assistentes de IA