GitHub MCP'ye Giriş ve Amacı
GitHub MCP Sunucusu, yapay zeka ile GitHub'ın güçlü ekosistemi arasında kusursuz bir entegrasyon sağlayarak geliştirici araçlarında heyecan verici bir ilerlemeyi temsil eder. Model Context Protocol (MCP), Büyük Dil Modellerinin (LLM'ler) harici araçlar ve veri kaynaklarıyla etkileşim kurması için standartlaştırılmış bir yoldur. GitHub'ın resmi MCP sunucusu, yapay zeka asistanlarının yapılandırılmış bir arayüz aracılığıyla GitHub verilerine erişmesini, arama yapmasını ve etkileşim kurmasını sağlayarak bu boşluğu özellikle GitHub depoları için kapatır.
Bu eğitimde, geliştirme iş akışınızı geliştirmek için GitHub MCP Sunucusunu nasıl kuracağımızı, yapılandıracağımızı ve etkili bir şekilde kullanacağımızı inceleyeceğiz. İster rutin GitHub görevlerini otomatikleştirmek, ister depolar hakkında daha derin bilgiler edinmek veya GitHub ile etkileşim kuran yapay zeka destekli araçlar oluşturmak isteyin, bu kılavuz size başlamak için gereken bilgileri sağlayacaktır.

GitHub MCP Sunucu Temellerini Anlama
GitHub MCP Sunucusu, yapay zeka modelleri ile GitHub'ın API'leri arasında standartlaştırılmış bir arayüz sağlamak için Model Context Protocol'ü uygular. Yapay zeka araçlarının ham HTML'yi ayrıştırması veya GitHub ile öngörülemez şekillerde etkileşim kurması yerine, MCP sunucusu, yapay zeka asistanlarının güvenilir bir şekilde kullanabileceği yapılandırılmış araçlar ve kaynaklar sağlar.

İşte GitHub MCP Sunucusunun sağladıkları:
- Otomatik GitHub iş akışı yürütme
- Depo verilerinin çıkarılması ve analizi
- Sorunlar, çekme istekleri ve kod ile etkileşim
- GitHub Copilot gibi yapay zeka kodlama asistanlarıyla entegrasyon
Bir yapay zeka asistanının GitHub'dan bilgiye ihtiyacı olduğunda, bu isteği MCP sunucusuna gönderir, bu da bu isteği işler ve yapılandırılmış verileri döndürür. Bu, GitHub kaynaklarına erişmesi gereken yapay zeka araçlarıyla çalışırken daha güvenilir ve tutarlı bir deneyim yaratır.
GitHub MCP Sunucu Ortamınızı Kurma

GitHub MCP Sunucusunu kullanmaya başlamadan önce, ortamınızı kurmanız gerekir. Birincil ön koşul, sunucuyu bir kapsayıcıda çalıştırmak için gerekli olan Docker'dır. Ayrıca, GitHub'ın API'leri ile kimlik doğrulaması yapmak için bir GitHub Kişisel Erişim Jetonuna (PAT) ihtiyacınız olacaktır.
Bir GitHub MCP Kişisel Erişim Jetonu Oluşturma
- GitHub hesap ayarlarınıza gidin
- Geliştirici ayarları > Kişisel erişim jetonları > İnce taneli jetonlar'a gidin
- "Yeni jeton oluştur"a tıklayın
- Jetonunuza açıklayıcı bir ad verin
- Son kullanma tarihini ayarlayın
- Jetonun erişmesini istediğiniz depoları seçin
- Kullanacağınız GitHub MCP araçlarına göre gerekli izinleri seçin
- "Jeton oluştur"a tıklayın ve güvenli bir konuma kopyalayın
Jetonunuzu güvende tutmayı unutmayın, çünkü bu, GitHub hesabınıza erişim sağlar. Verdiğiniz izinler, özel kullanım durumunuz için gerekenlerle sınırlı olmalıdır.
Farklı IDE'ler için GitHub MCP Sunucusunu Yükleme
VS Code Kurulumu için GitHub MCP
VS Code, GitHub MCP Sunucusu ile entegre olmanın en kolay yollarından birini sunar. İşte nasıl kurulacağı:
- VS Code'u açın
- Ctrl + Shift + P'ye (veya macOS'ta Cmd + Shift + P'ye) basın
- "Tercihler: Kullanıcı Ayarlarını Aç (JSON)" yazın
- Ayarlar dosyanıza aşağıdaki JSON yapılandırmasını ekleyin:
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "github_token",
"description": "GitHub Kişisel Erişim Jetonu",
"password": true
}
],
"servers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
}
}
}
}
}
Alternatif olarak, bu yapılandırmayı başkalarıyla paylaşmak için çalışma alanınızda bir .vscode/mcp.json
dosyası oluşturabilirsiniz. Bu durumda, "mcp"
üst düzey anahtarına ihtiyacınız yoktur.
Claude Desktop Uygulaması için GitHub MCP
Claude Desktop ayrıca MCP sunucularını da destekler. İşte nasıl yapılandırılacağı:
- Aşağıdaki yapılandırmayı oluşturun:
{
"mcpServers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
<YOUR_TOKEN>
değerini gerçek GitHub Kişisel Erişim Jetonunuzla değiştirin
Kurumsal Kullanıcılar için GitHub MCP Sunucusu
github.com yerine GitHub Enterprise Server kullanıyorsanız, Enterprise örneğinizin ana bilgisayar adını belirtmeniz gerekir. Bu, sunucuyu çalıştırırken --gh-host
bayrağı kullanılarak veya GH_HOST
ortam değişkenini ayarlayarak yapılabilir.
Örneğin, VS Code yapılandırmanızda, "args" dizisini şunları içerecek şekilde değiştirebilirsiniz:
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"-e",
"GH_HOST=github.mycompany.com",
"ghcr.io/github/github-mcp-server"
]
Bu, MCP sunucusunun genel github.com yerine Enterprise GitHub örneğinizle iletişim kurmasını sağlar.
GitHub MCP Sunucu Araçlarını Keşfetme
GitHub MCP Sunucusu, işlevselliğe göre kategorize edilmiş kapsamlı bir araç seti sağlar. İşte bazı temel araç kategorileri:
GitHub MCP Kullanıcı Araçlarına Genel Bakış
Kullanıcı araçları, yapay zeka asistanlarının kimliği doğrulanmış GitHub kullanıcısı hakkında bilgi almasına olanak tanır. Birincil araç şudur:
- get_me: Herhangi bir parametre gerektirmeden, şu anda kimliği doğrulanmış kullanıcı hakkında ayrıntıları alır.
GitHub MCP Sorun Yönetimi Araçları
Sorun araçları, yapay zeka asistanlarının GitHub sorunlarıyla etkileşim kurmasını sağlar:
- get_issue: Sahip, depo ve sorun numarası belirterek sorun ayrıntılarını alır
- create_issue: Özelleştirilebilir başlık, gövde, atananlar ve etiketlerle yeni sorunlar oluşturur
- add_issue_comment: Mevcut sorunlara yorum ekler
- list_issues: Çeşitli ölçütlerle depo sorunlarını listeler ve filtreler
- update_issue: Mevcut sorunları günceller
- search_issues: GitHub genelinde sorunları arar
GitHub MCP Çekme İstekleri Yönetimi
Çekme İsteği araçları, GitHub PR'leriyle etkileşim sağlar:
- get_pull_request: PR ayrıntılarını alır
- list_pull_requests: Depo PR'lerini listeler ve filtreler
- merge_pull_request: Açık çekme isteklerini birleştirir
- get_pull_request_files: Bir PR'de değiştirilen dosyaları alır
- create_pull_request: Yeni PR'ler oluşturur
- update_pull_request_branch: Bir PR dalını tabandan en son değişikliklerle günceller
GitHub MCP Depo Araçları Keşfi
Depo araçları, depo içeriğine ve yönetimine erişim sağlar:
- create_or_update_file: Depolardaki tek dosyaları değiştirir
- push_files: Bir kerede birden fazla dosya değişikliğini işler
- search_repositories: GitHub genelinde depoları arar
- create_repository: Yeni depolar oluşturur
- get_file_contents: Depolardan dosya içeriğini alır
- create_branch: Depolarda yeni dallar oluşturur
Depo İçeriği için GitHub MCP Kaynakları
Araçlara ek olarak, GitHub MCP Sunucusu, depo içeriğine doğrudan erişim sağlayan kaynak şablonları sağlar. Bu şablonlar belirli URL kalıplarını izler:
- Temel Depo İçeriği:
repo://{owner}/{repo}/contents{/path*}
- Dala Özgü İçerik:
repo://{owner}/{repo}/refs/heads/{branch}/contents{/path*}
- Taahhüde Özgü İçerik:
repo://{owner}/{repo}/sha/{sha}/contents{/path*}
- Etikete Özgü İçerik:
repo://{owner}/{repo}/refs/tags/{tag}/contents{/path*}
- PR'ye Özgü İçerik:
repo://{owner}/{repo}/refs/pull/{prNumber}/head/contents{/path*}
Bu kaynaklar, yapay zeka asistanlarının depo içeriğinin belirli sürümlerine doğrudan erişmesini sağlar.
GitHub MCP Sunucu Açıklamalarını Özelleştirme
GitHub MCP araçlarının açıklamalarını, iş akışınıza veya dil tercihlerinize daha iyi uyacak şekilde özelleştirebilirsiniz. İki ana yaklaşım vardır:
- Bir yapılandırma dosyası kullanma:
Geçersiz kılınan açıklamalarla aynı dizinde birgithub-mcp-server-config.json
dosyası oluşturun:
{
"TOOL_ADD_ISSUE_COMMENT_DESCRIPTION": "alternatif bir açıklama",
"TOOL_CREATE_BRANCH_DESCRIPTION": "Bir GitHub deposunda yeni bir dal oluşturun"
}
- Ortam değişkenlerini kullanma:
GITHUB_MCP_
öneki ile ortam değişkenleri ayarlayın:
export GITHUB_MCP_TOOL_ADD_ISSUE_COMMENT_DESCRIPTION="alternatif bir açıklama"
Geçerli çevirileri başlangıç noktası olarak dışa aktarmak için şunu çalıştırın:
./github-mcp-server --export-translations
GitHub MCP Sunucusunu Kaynaktan Oluşturma
Docker kullanmayı tercih etmiyorsanız, GitHub MCP Sunucusunu kaynaktan oluşturabilirsiniz:
- Depoyu klonlayın:
git clone https://github.com/github/github-mcp-server.git
- Depo dizinine gidin:
cd github-mcp-server
cmd/github-mcp-server
dizininde ikili dosyayı oluşturmak için Go'yu kullanınGITHUB_PERSONAL_ACCESS_TOKEN
ortam değişkeni ayarlanmış olarakgithub-mcp-server stdio
kullanarak sunucuyu çalıştırın
Sonuç: Geliştirme için GitHub MCP'yi En Üst Düzeye Çıkarma
GitHub MCP Sunucusu, yapay zeka araçlarının GitHub'ın ekosistemiyle entegrasyonunda önemli bir ilerlemeyi temsil eder. Model Context Protocol aracılığıyla standartlaştırılmış bir arayüz sağlayarak, yapay zeka asistanlarının GitHub verileriyle yapılandırılmış, öngörülebilir şekillerde etkileşim kurmasını sağlar.
Bu eğitim boyunca, GitHub MCP Sunucusunu nasıl kuracağımızı ve yapılandıracağımızı, çeşitli araçlarını ve kaynaklarını inceledik ve belirli ihtiyaçları karşılamak için nasıl özelleştireceğimizi öğrendik. Geliştirme iş akışınızda GitHub MCP Sunucusundan yararlanarak, üretkenliği artırabilir, GitHub etkileşimlerini kolaylaştırabilir ve yapay zeka destekli geliştirme araçları için yeni olanakların kilidini açabilirsiniz.
Yapay zeka, yazılım geliştirmeyi dönüştürmeye devam ettikçe, GitHub MCP Sunucusu gibi araçlar, yapay zeka asistanları ile geliştirici platformları arasında kusursuz entegrasyon oluşturmada giderek daha önemli bir rol oynayacaktır. Şimdi GitHub MCP Sunucusunda ustalaşarak, kendinizi yapay zeka ve yazılım geliştirmenin bu heyecan verici kesişim noktasının ön saflarına yerleştiriyorsunuz.