Przejdź do głównej zawartości

Integracja GitHub i GitLab przez MCP

Twoje AI właśnie napisało funkcję pomocniczą, która już istnieje w Twoim codebase — ukrytą trzy katalogi głęboko w pliku, o którym nikt nie pamięta. Utworzyło branch z nazwą naruszającą konwencję Twojego zespołu. Napisało wiadomość commita “fix stuff.” Wszystkie te problemy znikają, gdy AI może faktycznie czytać Twoją historię git i wchodzić w interakcje z platformą kontroli wersji.

  • Konfiguracja GitHub MCP (oficjalny) i GitLab MCP dla wszystkich trzech narzędzi
  • Prompty do wyszukiwania kodu, przeglądu PR, zarządzania branchami i workflow commitów
  • Wytyczne bezpieczeństwa dotyczące scopingu tokenów dostępu personalnego
  • Strategie używania MCP kontroli wersji w środowiskach monorepo

Oficjalny serwer MCP GitHub zapewnia głęboką integrację z GitHub API: wyszukiwanie kodu, zarządzanie PR, śledzenie ticketów, status CI i operacje na repozytoriach.

{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<your-token>"
}
}
}
}

Serwer Git MCP działa z Twoim lokalnym repozytorium. Daje AI ustrukturyzowany dostęp do branchów, commitów, diffów i logów bez kruchego parsowania shell.

{
"mcpServers": {
"git": {
"command": "uvx",
"args": ["mcp-server-git"]
}
}
}

Dla zespołów na GitLab serwer GitLab MCP zapewnia integrację z pipeline’ami CI/CD, merge requestami i śledzeniem ticketów.

{
"mcpServers": {
"gitlab": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-gitlab"],
"env": {
"GITLAB_TOKEN": "<your-token>",
"GITLAB_URL": "https://gitlab.com"
}
}
}
}

Tworząc tokeny dostępu personalnego, stosuj zasadę najmniejszych uprawnień:

ZakresGitHubGitLabPrzypadek użycia
Czytanie kodurepo (read)read_repositoryWyszukiwanie kodu, czytanie plików
Czytanie PR/MRrepo (read)read_apiPrzegląd PR, analiza diffów
Zapis PR/MRrepo (write)apiTworzenie PR, aktualizacja ticketów
Status CIrepo (read)read_apiMonitorowanie pipeline’ów

Zacznij od zakresów read-only. Dodawaj dostęp do zapisu tylko wtedy, gdy AI musi tworzyć branche, PR-y lub aktualizować tickety.

Błąd “Bad credentials”. Wygeneruj ponownie token z poprawnymi zakresami. Fine-grained tokens na GitHubie wymagają jawnego dostępu do repozytorium — upewnij się, że wybrałeś właściwe repozytoria.

Wyszukiwanie kodu nie zwraca wyników. Wyszukiwanie kodu GitHub wymaga zindeksowania repozytorium. Nowe repozytoria lub niedawno wypchnięte branche mogą potrzebować kilku minut, aby pojawić się w wynikach wyszukiwania.

Rate limiting. GitHub API ma limity zapytań (5000 zapytań/godzinę dla uwierzytelnionych użytkowników). Jeśli AI wykonuje zbyt wiele wywołań, zobaczysz błędy 403. Zmniejsz zakres promptów lub użyj lokalnego Git MCP dla operacji, które nie wymagają GitHub API.