GitHub MCP

resmi

GitHub MCP sunucusu, MCP uyumlu yapay zeka istemcilerinde depo arama, sorunlar, çekme istekleri, kod bağlamı ve GitHub iş akışları için resmi sunucudur.

GitHub MCP ile neler yapabilirsiniz?

  • Depo keşfi — Erişebildiğiniz herhangi bir depoda kod taraması, dosya arama ve commit analizi yapması için asistanınıza başvurun.
  • Sorun ve PR yönetimi — Yapay zekanın sorunlar ve çekme istekleri oluşturmasını, güncellemesini ve önceliklendirmesini sağlayın; kod değişikliklerini incelemek dahil.
  • CI/CD izleme — GitHub Actions iş akışı çalıştırmaları hakkında içgörüler edinin, derleme hatalarını analiz edin ve sürümleri yönetin.
  • Güvenlik analizi — Kod tarama bulgularını inceleyin ve güvenlik açıkları için Dependabot uyarılarını gözden geçirin.
  • Ekip iş birliği — Tartışmalara erişin, bildirimleri yönetin ve projelerinizdeki ekip etkinliğini analiz edin.

Barındırılan MCP Sunucusu

npx add-mcp 'https://api.githubcopilot.com/mcp/'

Claude Code, Codex, Cursor ve daha fazlasına kurulur

Dokümantasyon

Go Report Card

GitHub MCP Sunucusu

GitHub MCP Sunucusu, yapay zeka araçlarını doğrudan GitHub platformuna bağlar. Bu sayede yapay zeka ajanları, asistanlar ve sohbet robotları; depoları ve kod dosyalarını okuyabilir, sorunları ve PR'ları yönetebilir, kodu analiz edebilir ve iş akışlarını otomatikleştirebilir. Tüm bunlar doğal dil etkileşimleri aracılığıyla yapılır.

Kullanım Alanları

  • Depo Yönetimi: Erişiminiz olan herhangi bir depoda kodu gezinip sorgulayın, dosyaları arayın, commit'leri analiz edin ve proje yapısını anlayın.
  • Sorun ve PR Otomasyonu: Sorunlar ve çekme istekleri oluşturun, güncelleyin ve yönetin. Yapay zekanın hataları önceliklendirmesine, kod değişikliklerini incelemesine ve proje panolarını yönetmesine izin verin.
  • CI/CD ve İş Akışı Zekası: GitHub Actions iş akışı çalıştırmalarını izleyin, derleme hatalarını analiz edin, sürümleri yönetin ve geliştirme hattınız hakkında içgörüler edinin.
  • Kod Analizi: Güvenlik bulgularını inceleyin, Dependabot uyarılarını gözden geçirin, kod kalıplarını anlayın ve kod tabanınız hakkında kapsamlı içgörüler elde edin.
  • Ekip İşbirliği: Tartışmalara erişin, bildirimleri yönetin, ekip etkinliğini analiz edin ve ekibiniz için süreçleri kolaylaştırın.

Yapay zeka araçlarını GitHub bağlamına ve yeteneklerine bağlamak isteyen geliştiriciler için tasarlanmıştır; basit doğal dil sorgularından karmaşık çok adımlı ajan iş akışlarına kadar.

Go modülünü kullanma

Go modül yolu github.com/github/github-mcp-server/v2 şeklindedir. Kitaplık kullanıcıları içe aktarmalarda bu öneki kullanmalıdır, örneğin github.com/github/github-mcp-server/v2/pkg/github ve go get komutlarında. Bir depo kontrolünden derleme yaparken /v2 alt dizinine gerek yoktur.

Mevcut v2.0.0 etiketi bu modül yolu düzeltmesinden öncedir ve bir Go modülü olarak kullanılamaz. Bu değişiklik birleştirildikten sonra, v2.0.1 gibi yeni bir sürüm, düzeltilmiş modül yolunu içeren bir commit'ten etiketlenmelidir. O zamana kadar kullanıcılar, bu değişikliği içeren bir commit'ten sözde sürüm kullanabilir.


Uzak GitHub MCP Sunucusu

Install in VS Code Install in VS Code Insiders Install in Visual Studio

Uzak GitHub MCP Sunucusu, GitHub tarafından barındırılır ve başlamanın en kolay yolunu sağlar. MCP ana bilgisayarınız uzak MCP sunucularını desteklemiyorsa endişelenmeyin! Bunun yerine GitHub MCP Sunucusu'nun yerel sürümünü kullanabilirsiniz.

Ön Koşullar

  1. Uzak sunucu desteğine sahip uyumlu bir MCP ana bilgisayarı (VS Code 1.101+, Claude Desktop, Cursor, Windsurf vb.)
  2. Geçerli olan politikaların etkinleştirilmiş olması

VS Code'a Kurulum

Hızlı kurulum için yukarıdaki tek tıkla kurulum düğmelerinden birini kullanın. Bu akışı tamamladıktan sonra Ajan moduna geçin (Copilot Chat metin girişinin yanında bulunur) ve sunucu başlayacaktır. Uzak MCP ve OAuth desteği için VS Code 1.101 veya sonraki bir sürümü kullandığınızdan emin olun.

Alternatif olarak, VS Code'u manuel olarak yapılandırmak için aşağıdaki örneklerden uygun JSON bloğunu seçin ve ana bilgisayar yapılandırmanıza ekleyin:

OAuth kullanmaGitHub PAT kullanma
VS Code (sürüm 1.101 veya üzeri)
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/"
    }
  }
}
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer ${input:github_mcp_pat}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "github_mcp_pat",
      "description": "GitHub Personal Access Token",
      "password": true
    }
  ]
}

Diğer MCP ana bilgisayarlarına kurulum

Not: Her MCP ana bilgisayar uygulamasının, OAuth üzerinden uzak erişimi desteklemek için bir GitHub App veya OAuth App yapılandırması gerekir. Uzak MCP sunucularını destekleyen herhangi bir ana bilgisayar uygulaması, PAT kimlik doğrulaması ile uzak GitHub sunucusunu desteklemelidir. Yapılandırma ayrıntıları ve destek düzeyleri ana bilgisayara göre değişir. Daha fazla bilgi için ana bilgisayar uygulamasının belgelerine başvurduğunuzdan emin olun.

Yapılandırma

Araç seti yapılandırması

Uzak sunucu yapılandırması, araç setleri, başlıklar ve gelişmiş kullanım hakkında tüm ayrıntılar için Uzak Sunucu Belgeleri bölümüne bakın. Bu dosya, uzak GitHub MCP Sunucusu'nu VS Code ve diğer MCP ana bilgisayarlarında bağlama, özelleştirme ve kurma için kapsamlı talimatlar ve örnekler sağlar.

Araç setleri belirtilmediğinde, varsayılan araç setleri kullanılır.

Insiders Modu

Yeni özellikleri erken deneyin! Uzak sunucu, yeni özelliklere ve deneysel araçlara erken erişim sağlayan bir insiders sürümü sunar.

URL Yolu KullanmaBaşlık Kullanma
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/insiders"
    }
  }
}
{
  "servers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "X-MCP-Insiders": "true"
      }
    }
  }
}

Daha fazla ayrıntı ve örnek için Uzak Sunucu Belgeleri bölümüne ve mevcut olanların tam listesi için Insiders Özellikleri bölümüne bakın.

GitHub Enterprise

Veri yerleşimi olan GitHub Enterprise Cloud (ghe.com)

GitHub Enterprise Cloud, uzak sunucuyu da kullanabilir.

https://octocorp.ghe.com için GitHub PAT belirteci ile örnek:

{
    ...
    "github-octocorp": {
      "type": "http",
      "url": "https://copilot-api.octocorp.ghe.com/mcp",
      "headers": {
        "Authorization": "Bearer ${input:github_mcp_pat}"
      }
    },
    ...
}

Not: VS Code ve GitHub Copilot ile GitHub Enterprise'da OAuth kullanırken, VS Code ayarlarınızı GitHub Enterprise örneğinize işaret edecek şekilde yapılandırmanız da gerekir - bkz. VS Code'dan Kimlik Doğrulama

GitHub Enterprise Server

GitHub Enterprise Server, uzak sunucu barındırmayı desteklemez. Yerel sunucu yapılandırmasından GitHub Enterprise Server ve veri yerleşimi olan Enterprise Cloud (ghe.com) bölümüne bakın.


Yerel GitHub MCP Sunucusu

Install with Docker in VS Code Install with Docker in VS Code Insiders Install with Docker in Visual Studio

Ön Koşullar

  1. Sunucuyu bir kapsayıcıda çalıştırmak için Docker kurulu olmalıdır.

  2. Docker kurulduktan sonra, Docker'ın çalıştığından da emin olmanız gerekir. Docker görüntüsü ghcr.io/github/github-mcp-server adresinde mevcuttur. Görüntü herkese açıktır; çekme sırasında hata alırsanız, belirtecinizin süresi dolmuş olabilir ve docker logout ghcr.io yapmanız gerekebilir.

  3. Kimlik doğrulama. github.com'da önceden bir şey oluşturmanıza gerek yoktur — yukarıdaki tek tıkla düğmeler ilk kullanımda OAuth ile oturum açar (tarayıcı tabanlı bir akış; belirteç yalnızca bellekte tutulur). Docker düğmeleri sabit bir geri arama bağlantı noktası (127.0.0.1:8085) yayınlar, böylece kapsayıcının oturum açma geri aramasına erişilebilir. Nasıl çalıştığı, başsız/cihaz kodu yedeği ve kendi OAuth veya GitHub App'inizi getirme (GitHub Enterprise Server ve ghe.com için gerekli) hakkında Yerel Sunucu OAuth Oturumu bölümüne bakın.

    Belirteç mi tercih edersiniz? Yine de GITHUB_PERSONAL_ACCESS_TOKEN ayarını yaparak bir GitHub Kişisel Erişim Belirteci ile kimlik doğrulayabilirsiniz (OAuth'a göre önceliklidir). MCP sunucusu GitHub API'lerinin çoğunu kullanabilir, bu nedenle yapay zeka araçlarınıza vermekten memnun olduğunuz izinleri etkinleştirin (erişim belirteçleri hakkında daha fazla bilgi için belgelere göz atın).

PAT'leri Güvenli Şekilde Yönetme

Ortam Değişkenleri (Önerilen)

GitHub PAT'inizi farklı MCP ana bilgisayarlarında güvenli ve yeniden kullanılabilir tutmak için:

  1. PAT'inizi ortam değişkenlerinde saklayın

    export GITHUB_PAT=your_token_here
    

    Veya bir .env dosyası oluşturun:

    GITHUB_PAT=your_token_here
    
  2. .env dosyanızı koruyun

    # Add to .gitignore to prevent accidental commits
    echo ".env" >> .gitignore
    
  3. Yapılandırmalarda belirteci referans verin

    # CLI usage
    claude mcp add github -e GITHUB_PERSONAL_ACCESS_TOKEN=$GITHUB_PAT -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server
    
    # In config files (where supported)
    "env": {
      "GITHUB_PERSONAL_ACCESS_TOKEN": "$GITHUB_PAT"
    }
    

Not: Ortam değişkeni desteği ana bilgisayar uygulamasına ve IDE'ye göre değişir. Bazı uygulamalar (Windsurf gibi) yapılandırma dosyalarında sabit kodlanmış belirteçler gerektirir.

Belirteç Güvenliği En İyi Uygulamaları

  • Minimum kapsamlar: Yalnızca gerekli izinleri verin

    • repo - Depo işlemleri
    • read:packages - Docker görüntüsü erişimi
    • read:org - Organizasyon ekibi erişimi
  • Ayrı belirteçler: Farklı projeler/ortamlar için farklı PAT'ler kullanın

  • Düzenli rotasyon: Belirteçleri periyodik olarak güncelleyin

  • Asla commit etmeyin: Belirteçleri sürüm kontrolü dışında tutun

  • Dosya izinleri: Belirteç içeren yapılandırma dosyalarına erişimi kısıtlayın

    chmod 600 ~/.your-app/config.json
    

GitHub Enterprise Server ve veri yerleşimi olan Enterprise Cloud (ghe.com)

--gh-host bayrağı ve GITHUB_HOST ortam değişkeni, GitHub Enterprise Server veya veri yerleşimi olan GitHub Enterprise Cloud için ana bilgisayar adını ayarlamak için kullanılabilir.

  • GitHub Enterprise Server için, ana bilgisayar adına https:// URI şemasını önek olarak ekleyin. HTTPS gereklidir ve zorunludur: HTTPS olmayan ana bilgisayarlar reddedilir, böylece kimlik bilgileri asla düz metin üzerinden gönderilmez (tek istisna, yerel geliştirme için http://localhost gibi bir geri döngü ana bilgisayarıdır).
  • Veri yerleşimi olan GitHub Enterprise Cloud için, ana bilgisayar adı olarak https://YOURSUBDOMAIN.ghe.com kullanın.
"github": {
    "command": "docker",
    "args": [
    "run",
    "-i",
    "--rm",
    "-e",
    "GITHUB_PERSONAL_ACCESS_TOKEN",
    "-e",
    "GITHUB_HOST",
    "ghcr.io/github/github-mcp-server"
    ],
    "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}",
        "GITHUB_HOST": "https://<your GHES or ghe.com domain name>"
    }
}

Kurulum

VS Code'da GitHub Copilot'a Kurulum

Hızlı kurulum için yukarıdaki tek tıkla kurulum düğmelerinden birini kullanın. Bu akışı tamamladıktan sonra Ajan moduna geçin (Copilot Chat metin girişinin yanında bulunur) ve sunucu başlayacaktır.

VS Code'un ajan modu belgelerinde MCP sunucu araçlarını kullanma hakkında daha fazla bilgi edinin.

Diğer IDE'lere (JetBrains, Visual Studio, Eclipse vb.) GitHub Copilot'a Kurulum

Aşağıdaki JSON bloklarından birini IDE'nizin MCP ayarlarına ekleyin.

OAuth ile oturum açın (oluşturulacak veya saklanacak belirteç yok). github.com'da resmi görüntü uygulama kimlik bilgilerini zaten içerir, bu nedenle kendiniz hiçbirini sağlamazsınız: ilk kullanımda tarayıcı tabanlı bir oturum açma çalıştırır ve ortaya çıkan belirteci yalnızca bellekte tutar. Docker'da bu, kapsayıcının oturum açma geri aramasına erişilebilmesi için geri döngüye sabit bir geri arama bağlantı noktası yayınlamayı gerektirir:

{
  "mcp": {
    "servers": {
      "github": {
        "command": "docker",
        "args": [
          "run",
          "-i",
          "--rm",
          "-p",
          "127.0.0.1:8085:8085",
          "-e",
          "GITHUB_OAUTH_CALLBACK_PORT",
          "ghcr.io/github/github-mcp-server"
        ],
        "env": {
          "GITHUB_OAUTH_CALLBACK_PORT": "8085"
        }
      }
    }
  }
}

Yerel ikili akış (sabit bağlantı noktası gerekmez), başsız/cihaz kodu yedeği, GitHub Enterprise Server / ghe.com ve kendi OAuth veya GitHub App'inizi getirme hakkında Yerel Sunucu OAuth Oturumu bölümüne bakın.

Etkileşimli olmayan stdio dağıtımları için GitHub App Kimlik Doğrulaması bölümüne bakın.

Veya Kişisel Erişim Belirteci ile kimlik doğrulayın. Bunun yerine GITHUB_PERSONAL_ACCESS_TOKEN ayarını yapın (OAuth'a göre önceliklidir):

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "github_token",
        "description": "GitHub Personal Access Token",
        "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}"
        }
      }
    }
  }
}

İsteğe bağlı olarak, çalışma alanınızda .vscode/mcp.json adlı bir dosyaya benzer bir örnek (yani mcp anahtarı olmadan) ekleyebilirsiniz. Bu, yapılandırmayı aynı biçimi kabul eden diğer ana bilgisayar uygulamalarıyla paylaşmanıza olanak tanır.

MCP anahtarı dahil edilmemiş örnek JSON bloğu
{
  "inputs": [
    {
      "type": "promptString",
      "id": "github_token",
      "description": "GitHub Personal Access Token",
      "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}"
      }
    }
  }
}

Diğer MCP Ana Bilgisayarlarına Kurulum

Diğer MCP ana bilgisayar uygulamaları için lütfen kurulum kılavuzlarımıza bakın:

Tüm kurulum seçeneklerine genel bir bakış için Kurulum Rehberleri Dizini bölümüne bakın.

Not: Yerel MCP sunucularını destekleyen herhangi bir ana bilgisayar uygulaması, yerel GitHub MCP sunucusuna erişebilmelidir. Ancak, belirli yapılandırma süreci, sözdizimi ve entegrasyonun kararlılığı ana bilgisayar uygulamasına göre değişir. Birçoğu yukarıdaki örneklere benzer bir format izlese de bu garanti edilmez. Doğru MCP yapılandırma sözdizimi ve kurulum süreci için lütfen ana bilgisayar uygulamanızın belgelerine bakın.

Kaynaktan derleme

Docker'ınız yoksa, go build kullanarak cmd/github-mcp-server dizininde ikili dosyayı derleyebilir ve GITHUB_PERSONAL_ACCESS_TOKEN ortam değişkenini belirtecinize ayarlayarak github-mcp-server stdio komutunu kullanabilirsiniz. Derlemenin çıktı konumunu belirtmek için -o bayrağını kullanın. Sunucunuzu, command olarak derlenmiş çalıştırılabilir dosyayı kullanacak şekilde yapılandırmalısınız.

STDIO API istekleri sunucuyu github-mcp-server/<version> olarak tanımlar ve mevcut olduğunda üst MCP istemcisinin adını/sürümünü parantez içinde korur. İstemci meta verilerindeki kontrol karakterleri, tırnak işaretleri, ters eğik çizgiler ve parantezler, HTTP başlığının geçerli kalması için kaçış karakterleriyle kullanılır; sıradan adlar, sürümler, boşluklar ve yazdırılabilir Unicode korunur. Sürüm derlemeleri sürüm numaralarını korur. Revizyon meta verilerine sahip kaynak ve varsayılan Docker derlemeleri vcs-<full-commit-sha> kullanır. Docker yayınlama iş akışı, ön sürümler dahil etiket sürümlerini korur ve dal, çekme isteği ve gece derlemelerinin bağlantılı kaynak revizyonunu kullanmasına izin verir. -dirty işareti yalnızca hem revizyon hem de değiştirilmiş durum gömülü VCS meta verilerinden geldiğinde uygulanır, asla geçerli, açıkça sağlanan bir main.commit için geçerli değildir. Bu bir VCS derleme tanımlayıcısıdır, bir sürüm numarası değildir.

Git kontrolünden bir go build -o github-mcp-server ./cmd/github-mcp-server ile tam paketi derleyerek VCS revizyonunu gömün. VCS meta verileri olmayan derlemeler için, gerçek sürümü -ldflags '-X main.version=<release>' ile veya tam kaynak revizyonunu -ldflags '-X main.commit=<sha>' ile sağlayın. Geçerli meta veriler şu sırayla seçilir: açık sürüm, açık kaynak revizyonu, gömülü VCS revizyonu, ardından yüklü ana modül sürümü. Geçerli açık revizyonlar, derleme bağlamı filtrelemesi gömülü VCS meta verilerini değiştirse bile yetkili kalır. Eksik veya hatalı adaylar bir sonraki kullanılabilir kaynağa düşer. Hiçbiri mevcut değilse, STDIO yine de dev geliştirme etiketiyle başlar ve stderr'de bir uyarı yayar, stdout'u MCP protokolü için kullanılabilir bırakır. Sürüme özgü atıf gerektiğinde gerçek sürüm veya revizyon meta verileri sağlayın.

Örneğin:

{
  "mcp": {
    "servers": {
      "github": {
        "command": "/path/to/github-mcp-server",
        "args": ["stdio"],
        "env": {
          "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
        }
      }
    }
  }
}

Araç Yapılandırması

GitHub MCP Sunucusu, --toolsets bayrağı aracılığıyla belirli işlevsellik gruplarını etkinleştirmeyi veya devre dışı bırakmayı destekler. Bu, AI araçlarınıza hangi GitHub API yeteneklerinin sunulacağını kontrol etmenizi sağlar. Yalnızca ihtiyacınız olan araç setlerini etkinleştirmek, LLM'in araç seçimine yardımcı olabilir ve bağlam boyutunu azaltabilir.

Araç setleri yalnızca Araçlarla sınırlı değildir. İlgili MCP Kaynakları ve İstemleri de geçerli olduğunda dahil edilir.

Hiçbir araç seti belirtilmediğinde, varsayılan araç setleri kullanılır.

Örnek mi arıyorsunuz? Minimal kurulumlar, salt okunur mod ve araçları araç setleriyle birleştirme gibi yaygın tarifler için Sunucu Yapılandırma Rehberi bölümüne bakın.

Araç Setlerini Belirtme

LLM'e sunmak istediğiniz araç setlerini belirtmek için izin listesini iki şekilde iletebilirsiniz:

  1. Komut Satırı Argümanını Kullanma:

    github-mcp-server --toolsets repos,issues,pull_requests,actions,code_security
    
  2. Ortam Değişkenini Kullanma:

    GITHUB_TOOLSETS="repos,issues,pull_requests,actions,code_security" ./github-mcp-server
    

Her ikisi de sağlanırsa, GITHUB_TOOLSETS ortam değişkeni komut satırı argümanına göre önceliklidir.

Belirli Araçları Belirtme

Ayrıca --tools bayrağını kullanarak belirli araçları da yapılandırabilirsiniz. Araçlar bağımsız olarak kullanılabilir veya ince ayarlı kontrol için araç setleriyle birleştirilebilir.

  1. Komut Satırı Argümanını Kullanma:

    github-mcp-server --tools get_file_contents,issue_read,create_pull_request
    
  2. Ortam Değişkenini Kullanma:

    GITHUB_TOOLS="get_file_contents,issue_read,create_pull_request" ./github-mcp-server
    
  3. Araç Setleriyle Birleştirme (eklemeli):

    github-mcp-server --toolsets repos,issues --tools get_gist
    

    Bu, repos ve issues araç setlerindeki tüm araçları ve ayrıca get_gist kaydeder.

Önemli Notlar:

  • Araçlar ve araç setleri birlikte kullanılabilir
  • Salt okunur mod önceliklidir: --read-only ayarlanmışsa, --tools aracılığıyla açıkça istense bile yazma araçları atlanır
  • Araç adları tam olarak eşleşmelidir (ör. get_file_contents, getFileContents değil). Geçersiz araç adları, sunucunun başlangıçta bir hata mesajıyla başarısız olmasına neden olur
  • Araçlar yeniden adlandırıldığında, geriye dönük uyumluluk için eski adlar takma ad olarak korunur. Ayrıntılar için Araç Yeniden Adlandırma bölümüne bakın.

Docker ile Araç Setlerini Kullanma

Docker kullanırken, araç setlerini ortam değişkenleri olarak iletebilirsiniz:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_TOOLSETS="repos,issues,pull_requests,actions,code_security" \
  ghcr.io/github/github-mcp-server

Docker ile Araçları Kullanma

Docker kullanırken, belirli araçları ortam değişkenleri olarak iletebilirsiniz. Ayrıca araçları araç setleriyle birleştirebilirsiniz:

# Tools only
docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_TOOLS="get_file_contents,issue_read,create_pull_request" \
  ghcr.io/github/github-mcp-server

# Tools combined with toolsets (additive)
docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_TOOLSETS="repos,issues" \
  -e GITHUB_TOOLS="get_gist" \
  ghcr.io/github/github-mcp-server

Özel Araç Setleri

"all" araç seti

Özel all araç seti, diğer tüm yapılandırmalardan bağımsız olarak tüm mevcut araç setlerini etkinleştirmek için sağlanabilir:

./github-mcp-server --toolsets all

Veya ortam değişkenini kullanarak:

GITHUB_TOOLSETS="all" ./github-mcp-server

"default" araç seti

Varsayılan default araç seti, hiçbir araç seti belirtilmezse sunucuya iletilen yapılandırmadır.

Varsayılan yapılandırma şudur:

  • context
  • repos
  • issues
  • pull_requests
  • users

Varsayılan yapılandırmayı korumak ve ek araç setleri eklemek için:

GITHUB_TOOLSETS="default,stargazers" ./github-mcp-server

Insider Modu

Yerel GitHub MCP Sunucusu, yeni özelliklere ve deneysel araçlara erken erişim sağlayan bir insider sürümü sunar.

  1. Komut Satırı Argümanını Kullanma:

    ./github-mcp-server --insiders
    
  2. Ortam Değişkenini Kullanma:

    GITHUB_INSIDERS=true ./github-mcp-server
    

Docker kullanırken:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_INSIDERS=true \
  ghcr.io/github/github-mcp-server

Mevcut Araç Setleri

Aşağıdaki araç setleri mevcuttur:

Araç SetiAçıklama
personcontextKesinlikle önerilir: Geçerli kullanıcı ve çalıştığınız GitHub bağlamı hakkında bağlam sağlayan araçlar
workflowactionsGitHub Actions iş akışları ve CI/CD işlemleri
code-squarecode_qualityGitHub Kod Kalitesi ile ilgili araçlar
codescancode_securityGitHub Kod Taraması gibi kod güvenliği ile ilgili araçlar
copilotcopilotCopilot ile ilgili araçlar
copilotcopilot_issue_intentsAmaç meta verileri taşıyan (gerekçe, güven, öneri) isteğe bağlı Copilot sorun atama araçları
dependabotdependabotDependabot araçları
comment-discussiondiscussionsGitHub Discussions ile ilgili araçlar
logo-gistgistsGitHub Gist ile ilgili araçlar
git-branchgitDüşük seviyeli Git işlemleri için GitHub Git API ile ilgili araçlar
lawgovernanceDepo, kuruluş ve kurumsal düzeylerde kural setlerini ve özel özellikleri yönetmek için depo yönetişim araçları
issue-openedissuesGitHub Issues ile ilgili araçlar
taglabelsGitHub Labels ile ilgili araçlar
bellnotificationsGitHub Notifications ile ilgili araçlar
organizationorgsGitHub Organization ile ilgili araçlar
projectprojectsGitHub Projects ile ilgili araçlar
git-pull-requestpull_requestsGitHub Pull Request ile ilgili araçlar
reporeposGitHub Repository ile ilgili araçlar
shield-locksecret_protectionGitHub Secret Taraması gibi gizli koruma ile ilgili araçlar
shieldsecurity_advisoriesGüvenlik danışmanlıkları ile ilgili araçlar
starstargazersGitHub Stargazers ile ilgili araçlar
peopleusersGitHub User ile ilgili araçlar

Uzak GitHub MCP Sunucusunda Ek Araç Setleri

Araç SetiAçıklama
copilotCopilot ile ilgili araçlar (ör. Copilot Coding Agent)
copilot_spacesCopilot Spaces ile ilgili araçlar
github_support_docs_searchGitHub ürün ve destek sorularını yanıtlamak için dokümanları arayın

Araçlar

Depo araçları, müzakere edilen MCP protokol sürümü desteklenen bir sürüm 2026-07-28 veya daha yenisi olduğunda çıktı şemalarını ve yazılı structuredContent öğelerini kullanıma sunar. Daha eski istemciler, bilinmeyen protokol sürümüne sahip istemciler ve sürümü atlayan istemciler, çıktı şeması veya yapılandırılmış çıktı olmadan mevcut içeriği alır. Bilinmeyen sürümler, 2026-07-28 sürümünden sonra sıralandıkları için yalnızca destekleniyor olarak kabul edilmez.

get_file_contents için, dizin sonuçları (alan projeksiyonları dahil) yapılandırılmış dizilerdir. Dosya indirmeleri ve yalnızca meta veri yanıtları, durum mesajlarını, metni, base64 bloblarını, boş dosyaları ve indirme bağlantılarını koruyan yazılı metin, gömülü kaynak veya kaynak bağlantı bloklarından oluşan bir content dizisi kullanır. Yıldızlama ve silme gibi yalnızca metin depo değişiklikleri de yapılandırılmış bir message döndürür; çatal yanıtları bir depo referansını devam eden bir mesajdan ayırır. Depo silme işlemi, tamamlanmış bir sonuç döndürmeden önce yine de mevcut onay akışını gerektirir. Yapılandırılmış depo sonuçları, ham REST nesneleri yerine kompakt DTO'lar kullanır. Sürüm aramaları, sürüm listeleriyle aynı kompakt sürüm yapısını paylaşır; Git referansları ref, nesne türü ve SHA'yı korur; açıklamalı etiketler etiket/mesaj/etiketleyici/hedef bilgilerini korur; silme commit'leri SHA, mesaj, yazarlar, ağaç SHA'sı, üst SHA'lar ve mevcut olduğunda insan odaklı bir html_url korur. Dizin girdileri dosya meta verilerini ve kullanışlı HTML/indirme bağlantılarını korur, ancak bir projeksiyonda istenmiş olsa bile API ve hipermedya yönlendirme URL'lerini atlar. Eski ve bilinmeyen protokol sürümleri orijinal metni bayt bayt korur; modern metin tabanlı JSON yanıtları, structuredContent ile aynı kompakt DTO'yu seri hale getirir. Metin olmayan kaynak blokları ve araç hataları mevcut içerik davranışlarını korur. Yapılandırılmış projeksiyonlar, eski biçimlendiriciyle aynı temizlenmiş ve filtrelenmiş kaynağı kullanır.

get_repository_tree, list_gists, get_gist, create_gist ve update_gist için gist sonuçları dosya adlarını, içerikleri, boyutları, dil/tür bilgilerini, zaman damgalarını, görünürlüğü ve kompakt sahip profillerini korurken, API/node ve Git taşıma URL'lerini atlar. Ağaç girdileri türetilebilir API URL'lerini atlar. Gist oluşturma/güncelleme sonuçları gist kimliğini ve HTML URL'sini içerir. Modern JSON metni ve yapılandırılmış içerik aynı kompakt sonucu seri hale getirir. Daha eski veya bilinmeyen protokol sürümleri, çıktı şeması veya yapılandırılmış içerik olmadan bayt bayt eski metni korur.

Sorun meta verisi (list_issue_types, list_issue_fields), yorum (add_issue_comment, update_issue_comment), bağımlılık (issue_dependency_read, issue_dependency_write) ve kopya algılama (find_duplicate) araçları, müzakere edilen desteklenen protokol sürümleri 2026-07-28 veya daha yeni için yazılmış outputSchema ve structuredContent sağlar. Daha eski veya bilinmeyen protokol sürümleri bu alanlar olmadan aynı metin yanıtlarını korur. Araç hataları yapılandırılmış içerik döndürmez. Bağımlılık ve kopya algılama araçları mevcut özellik kapılarını korur.

Müzakere edilen desteklenen protokol sürümleri 2026-07-28 veya daha yeni için, birleştirilmiş Actions araçları (actions_list, actions_get, actions_run_trigger) bir method ayırt edici ve yönteme özgü yazılmış bir alan içeren yapılandırılmış nesneler döndürür; JSON metni aynı kompakt projeksiyonu içerir. İş akışı, iş ve yapı projeksiyonları API/hipermedya URL'lerini atlarken tarayıcı bağlantılarını ve kullanışlı tanımlayıcıları, durumları, zaman damgalarını ve kullanım sürelerini korur. Çalıştırma kullanım listeleri, faturalandırılabilir çalıştırıcı ortamlarını belirleyici ad sırasına göre listeler. Daha eski ve bilinmeyen protokol metin yanıtları değişmeden kalır; get_job_logs yazılmış içeriğini, URL'sini veya başarısız iş koleksiyonu varyantlarını korur.

workflow Actions
  • actions_get - GitHub Actions kaynaklarının (iş akışları, iş akışı çalıştırmaları, işler ve yapılar) ayrıntılarını alın

    • OAuth Challenge Kapsamları: repo
    • method: Yürütülecek yöntem (dize, zorunlu)
    • owner: Depo sahibi (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
    • resource_id: Kaynağın benzersiz tanımlayıcısı. Sağlanan "method"a göre değişir, bu nedenle doğru kimliği sağladığınızdan emin olun:
      • 'get_workflow' yöntemi için bir iş akışı kimliği veya iş akışı dosya adı (örn. ci.yaml) sağlayın.
      • 'get_workflow_run', 'get_workflow_run_usage' ve 'get_workflow_run_logs_url' yöntemleri için bir iş akışı çalıştırma kimliği sağlayın.
      • 'download_workflow_run_artifact' yöntemi için bir yapı kimliği sağlayın.
      • 'get_workflow_job' yöntemi için bir iş kimliği sağlayın. (dize, zorunlu)
  • actions_list - Bir depodaki GitHub Actions iş akışlarını listele

    • OAuth Challenge Kapsamları: repo
    • method: Gerçekleştirilecek eylem (dize, zorunlu)
    • owner: Depo sahibi (dize, zorunlu)
    • page: Sayfalama için sayfa numarası (varsayılan: 1) (sayı, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (varsayılan: 30, maks: 100) (sayı, isteğe bağlı)
    • repo: Depo adı (dize, zorunlu)
    • resource_id: Kaynağın benzersiz tanımlayıcısı. Sağlanan "method"a göre değişir, bu nedenle doğru kimliği sağladığınızdan emin olun:
      • 'list_workflows' yöntemi için herhangi bir kaynak kimliği sağlamayın.
      • 'list_workflow_runs' yöntemi için bir iş akışı kimliği veya iş akışı dosya adı (örn. ci.yaml) sağlayın veya depodaki tüm iş akışı çalıştırmalarını listelemek için atlayın.
      • 'list_workflow_jobs' ve 'list_workflow_run_artifacts' yöntemleri için bir iş akışı çalıştırma kimliği sağlayın. (dize, isteğe bağlı)
    • workflow_jobs_filter: İş akışı işleri için filtreler. YALNIZCA yöntem 'list_workflow_jobs' olduğunda kullanılır (nesne, isteğe bağlı)
    • workflow_runs_filter: İş akışı çalıştırmaları için filtreler. YALNIZCA yöntem 'list_workflow_runs' olduğunda kullanılır (nesne, isteğe bağlı)
  • actions_run_trigger - GitHub Actions iş akışı eylemlerini tetikle

    • OAuth Challenge Kapsamları: repo
    • inputs: İş akışının kabul ettiği girdiler. Yalnızca 'run_workflow' yöntemi için kullanılır. (nesne, isteğe bağlı)
    • method: Yürütülecek yöntem (dize, zorunlu)
    • owner: Depo sahibi (dize, zorunlu)
    • ref: İş akışı için git referansı. Referans bir dal veya etiket adı olabilir. 'run_workflow' yöntemi için zorunludur. (dize, isteğe bağlı)
    • repo: Depo adı (dize, zorunlu)
    • run_id: İş akışı çalıştırma kimliği. 'run_workflow' dışındaki tüm yöntemler için zorunludur. (sayı, isteğe bağlı)
    • workflow_id: İş akışı kimliği (sayısal) veya iş akışı dosya adı (örn. main.yml, ci.yaml). 'run_workflow' yöntemi için zorunludur. (dize, isteğe bağlı)
  • get_job_logs - GitHub Actions iş akışı iş günlüklerini alın

    • OAuth Challenge Kapsamları: repo
    • failed_only: true olduğunda, run_id tarafından belirtilen iş akışı çalıştırmasındaki tüm başarısız işlerin günlüklerini alır. run_id'nin sağlanmasını gerektirir. (boolean, isteğe bağlı)
    • job_id: İş akışı işinin benzersiz tanımlayıcısı. Tek bir iş için günlük alırken zorunludur. (sayı, isteğe bağlı)
    • owner: Depo sahibi (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
    • return_content: URL'ler yerine gerçek günlük içeriğini döndürür (boolean, isteğe bağlı)
    • run_id: İş akışı çalıştırmasının benzersiz tanımlayıcısı. failed_only true olduğunda, çalıştırmadaki tüm başarısız işlerin günlüklerini almak için zorunludur. (sayı, isteğe bağlı)
    • tail_lines: Günlüğün sonundan döndürülecek satır sayısı (sayı, isteğe bağlı)
code-square Code Quality
  • get_code_quality_finding - Kod kalitesi bulgusunu alın
    • OAuth Challenge Kapsamları: repo
    • findingNumber: Bulgunun numarası. (sayı, zorunlu)
    • owner: Deponun sahibi. (dize, zorunlu)
    • repo: Deponun adı. (dize, zorunlu)
codescan Code Security
  • get_code_scanning_alert - Kod tarama uyarısını alın

    • OAuth Challenge Kapsamları: security_events
    • alertNumber: Uyarının numarası. (sayı, zorunlu)
    • owner: Deponun sahibi. (dize, zorunlu)
    • repo: Deponun adı. (dize, zorunlu)
  • list_code_scanning_alerts - Kod tarama uyarılarını listele

    • OAuth Challenge Kapsamları: security_events
    • owner: Deponun sahibi. (dize, zorunlu)
    • page: Sayfalama için sayfa numarası (min 1) (sayı, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, maks 100) (sayı, isteğe bağlı)
    • ref: Listelemek istediğiniz sonuçlar için Git referansı. (dize, isteğe bağlı)
    • repo: Deponun adı. (dize, zorunlu)
    • severity: Kod tarama uyarılarını önem derecesine göre filtrele (dize, isteğe bağlı)
    • state: Kod tarama uyarılarını duruma göre filtrele. Varsayılan açık (dize, isteğe bağlı)
    • tool_name: Kod tarama için kullanılan aracın adı. (dize, isteğe bağlı)
person Context
  • get_me - Kullanıcı profilimi al

    • MCP App UI: ui://github-mcp-server/get-me
    • Parametre gerekmez
  • get_team_members - Takım üyelerini al

    • OAuth Challenge Kapsamları: read:org
    • org: Takımı içeren kuruluş girişi (sahip). (dize, zorunlu)
    • team_slug: Takım kısa adı (dize, zorunlu)
  • get_teams - Takımları al

    • OAuth Challenge Kapsamları: read:org
    • user: Takımlarını almak için kullanıcı adı. Sağlanmazsa, kimliği doğrulanmış kullanıcıyı kullanır. (dize, isteğe bağlı)
  • ui_get - UI verilerini al

    • OAuth Challenge Kapsamları: repo, read:org
    • method: Getirilecek veri türü (dize, zorunlu)
    • owner: Depo sahibi (tüm yöntemler için zorunlu) (dize, zorunlu)
    • repo: Depo adı (etiketler, atananlar, kilometre taşları, dallar, sorun alanları, inceleyenler için zorunlu) (dize, isteğe bağlı)
copilot Copilot
  • assign_copilot_to_issue - Copilot'u soruna ata

    • OAuth Challenge Kapsamları: repo
    • base_ref: Ajanın çalışmasına başlayacağı Git referansı (örn. dal). Belirtilmezse, deponun varsayılan dalına varsayılan olarak ayarlanır (dize, isteğe bağlı)
    • custom_instructions: Ajanı sorun gövdesinin ötesinde yönlendirmek için isteğe bağlı özel talimatlar. Sorun açıklamasında yakalanmayan ek bağlam, kısıtlamalar veya rehberlik sağlamak için bunu kullanın (dize, isteğe bağlı)
    • issue_number: Sorun numarası (sayı, zorunlu)
    • owner: Depo sahibi (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
  • request_copilot_review - Copilot incelemesi iste

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (dize, zorunlu)
    • pullNumber: Çekme isteği numarası (sayı, zorunlu)
    • repo: Depo adı (dize, zorunlu)
copilot Copilot Issue Intents - **assign_copilot_to_issue_with_intent** - Copilot'u soruna niyetle ata - **OAuth Challenge Kapsamları**: `repo` - `base_ref`: Ajanın çalışmaya başlayacağı Git referansı (ör. dal). Belirtilmezse, deponun varsayılan dalına varsayılan olarak ayarlanır. is_suggestion true olduğunda yok sayılır (string, isteğe bağlı) - `confidence`: Bu seçimden ne kadar emin olduğunuz. Net sinyal veya açık kullanıcı isteği için 'HIGH', bazı belirsizliklerle makul çıkarım için 'MEDIUM', sınırlı sinyalle en iyi tahmin için 'LOW'. (string, zorunlu) - `custom_instructions`: Ajanı sorun gövdesinin ötesinde yönlendirmek için isteğe bağlı özel talimatlar. is_suggestion true olduğunda yok sayılır (string, isteğe bağlı) - `is_suggestion`: True ise, ajanı başlatmak yerine bekleyen bir Copilot atama niyeti kaydeder. Onay daha sonra başlatma bağlamını sağlar; bu durumda base_ref ve custom_instructions yok sayılır. (boolean, zorunlu) - `issue_number`: Sorun numarası (number, zorunlu) - `owner`: Depo sahibi (string, zorunlu) - `rationale`: Sorunla ilgili olarak Copilot'u seçmeye yol açan şeyi açıklayan tek bir özlü cümle. Somut sinyali belirtin (ör. 'Net kabul kriterleri olan iyi kapsamlandırılmış görev'). (string, zorunlu) - `repo`: Depo adı (string, zorunlu)
dependabot Dependabot
  • get_dependabot_alert - Dependabot uyarısını al

    • OAuth Challenge Kapsamları: security_events
    • alertNumber: Uyarının numarası. (number, zorunlu)
    • owner: Deponun sahibi. (string, zorunlu)
    • repo: Deponun adı. (string, zorunlu)
  • list_dependabot_alerts - Dependabot uyarılarını listele

    • OAuth Challenge Kapsamları: security_events
    • after: Sayfalama için imleç. Önceki yanıttaki imleci kullanın. (string, isteğe bağlı)
    • owner: Deponun sahibi. (string, zorunlu)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, maks 100) (number, isteğe bağlı)
    • repo: Deponun adı. (string, zorunlu)
    • severity: Dependabot uyarılarını önem derecesine göre filtrele (string, isteğe bağlı)
    • state: Dependabot uyarılarını duruma göre filtrele. Varsayılan olarak açık (string, isteğe bağlı)
comment-discussion Discussions
  • discussion_comment_write - Tartışma yorumlarını yönet

    • OAuth Challenge Kapsamları: repo
    • body: Yorum içeriği ('add', 'reply' ve 'update' yöntemleri için zorunlu) (string, isteğe bağlı)
    • commentNodeID: Tartışma yorumunun Node Kimliği ('reply', 'update', 'delete', 'mark_answer' ve 'unmark_answer' yöntemleri için zorunlu). 'reply' için bu, yanıtlanacak üst düzey yorumdur; GitHub Discussions yalnızca bir düzey iç içe yerleştirmeyi destekler. (string, isteğe bağlı)
    • discussionNumber: Tartışma numarası ('add' ve 'reply' yöntemleri için zorunlu) (number, isteğe bağlı)
    • method: Tartışma yorumu üzerinde gerçekleştirilecek yazma işlemi. Seçenekler şunlardır:
      • 'add' - bir tartışmaya yeni bir üst düzey yorum ekler.
      • 'reply' - üst düzey bir tartışma yorumuna yanıt verir (GitHub Discussions yalnızca bir düzey iç içe yerleştirmeyi destekler).
      • 'update' - mevcut bir tartışma yorumunu günceller.
      • 'delete' - bir tartışma yorumunu siler.
      • 'mark_answer' - bir tartışma yorumunu yanıt olarak işaretler (yalnızca Soru-Cevap).
      • 'unmark_answer' - bir tartışma yorumunun yanıt işaretini kaldırır (yalnızca Soru-Cevap). (string, zorunlu)
    • owner: Depo sahibi ('add' ve 'reply' yöntemleri için zorunlu) (string, isteğe bağlı)
    • repo: Depo adı ('add' ve 'reply' yöntemleri için zorunlu) (string, isteğe bağlı)
  • get_discussion - Tartışmayı al

    • OAuth Challenge Kapsamları: repo
    • discussionNumber: Tartışma Numarası (number, zorunlu)
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • get_discussion_comments - Tartışma yorumlarını al

    • OAuth Challenge Kapsamları: repo
    • after: Sayfalama için imleç. Önceki yanıttaki imleci kullanın. (string, isteğe bağlı)
    • discussionNumber: Tartışma Numarası (number, zorunlu)
    • includeReplies: True olduğunda, her üst düzey yorum, yanıtlarını içinde iç içe olarak içerir (yorum başına en fazla 100 yanıt, GitHub API maksimumudur). Varsayılan false'tur. (boolean, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, maks 100) (number, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
  • list_discussion_categories - Tartışma kategorilerini listele

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı. Sağlanmazsa, tartışma kategorileri kuruluş düzeyinde sorgulanır. (string, isteğe bağlı)
  • list_discussions - Tartışmaları listele

    • OAuth Challenge Kapsamları: repo
    • after: Sayfalama için imleç. Önceki yanıttaki imleci kullanın. (string, isteğe bağlı)
    • category: Tartışma kategorisi kimliğine göre isteğe bağlı filtre. Sağlanırsa, yalnızca bu kategoriye sahip tartışmalar listelenir. (string, isteğe bağlı)
    • direction: Sıralama yönü. (string, isteğe bağlı)
    • orderBy: Tartışmaları alana göre sırala. Sağlanırsa, 'direction' da sağlanmalıdır. (string, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, maks 100) (number, isteğe bağlı)
    • repo: Depo adı. Sağlanmazsa, tartışmalar kuruluş düzeyinde sorgulanır. (string, isteğe bağlı)
logo-gist Gists
  • create_gist - Gist Oluştur

    • OAuth Challenge Kapsamları: gist
    • content: Basit tek dosyalı gist oluşturma için içerik (string, zorunlu)
    • description: Gist'in açıklaması (string, isteğe bağlı)
    • filename: Basit tek dosyalı gist oluşturma için dosya adı (string, zorunlu)
    • public: Gist'in herkese açık olup olmadığı (boolean, isteğe bağlı)
  • get_gist - Gist İçeriğini Al

    • gist_id: Gist'in kimliği (string, zorunlu)
  • list_gists - Gist'leri Listele

    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, maks 100) (number, isteğe bağlı)
    • since: Yalnızca bu zamandan sonra güncellenen gist'ler (ISO 8601 zaman damgası) (string, isteğe bağlı)
    • username: GitHub kullanıcı adı (kimliği doğrulanmış kullanıcının gist'leri için atlayın) (string, isteğe bağlı)
  • update_gist - Gist Güncelle

    • OAuth Challenge Kapsamları: gist
    • content: Dosya için içerik (string, zorunlu)
    • description: Gist'in güncellenmiş açıklaması (string, isteğe bağlı)
    • filename: Güncellenecek veya oluşturulacak dosya adı (string, zorunlu)
    • gist_id: Güncellenecek gist'in kimliği (string, zorunlu)
git-branch Git
  • get_repository_tree - Depo ağacını al
    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (kullanıcı adı veya kuruluş) (string, zorunlu)
    • path_filter: Ağaç sonuçlarını filtrelemek için isteğe bağlı yol öneki (ör. yalnızca src dizinindeki dosyaları göstermek için 'src/') (string, isteğe bağlı)
    • recursive: Bu parametrenin true olarak ayarlanması, ağaç tarafından başvurulan nesneleri veya alt ağaçları döndürür. Varsayılan false'tur (boolean, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
    • tree_sha: Ağacın SHA1 değeri veya ref (dal veya etiket) adı. Varsayılan olarak deponun varsayılan dalına ayarlanır (string, isteğe bağlı)
law Governance
  • create_repository_ruleset - Depo kural seti oluştur

    • OAuth Challenge Kapsamları: repo, admin:org, admin:enterprise
    • bypass_actors: Bu kural setindeki kuralları atlayabilen aktörler (object[], isteğe bağlı)
    • conditions: Bu kural setinin ne zaman uygulanacağına ilişkin koşullar, ör. {"ref_name": {"include": ["refs/heads/main"], "exclude": []}} (object, isteğe bağlı)
    • enforcement: Kural setinin uygulama düzeyi. 'evaluate', yöneticilerin kuralları uygulamadan önce test etmesine olanak tanır (string, zorunlu)
    • enterprise: Enterprise kısa adı. Düzey 'enterprise' olduğunda zorunludur. (string, isteğe bağlı)
    • level: Kural setinin yapılandırıldığı düzey:
      • 'repository': Tek bir depodaki kural seti ('owner' ve 'repo' gerektirir).
      • 'organization': Bir kuruluştaki depoları kapsayan kural seti ('org' gerektirir).
      • 'enterprise': Bir kuruluş genelindeki depoları kapsayan kural seti ('enterprise' gerektirir). (string, zorunlu)
    • name: Kural setinin adı (string, zorunlu)
    • org: Kuruluş adı. Düzey 'organization' olduğunda zorunludur. (string, isteğe bağlı)
    • owner: Depo sahibi. Düzey 'repository' olduğunda zorunludur. (string, isteğe bağlı)
    • repo: Depo adı. Düzey 'repository' olduğunda zorunludur. (string, isteğe bağlı)
    • rules: Kural seti içindeki kurallar dizisi. Her kural, bir 'type' (ör. 'creation', 'deletion', 'non_fast_forward', 'required_signatures', 'pull_request', 'required_status_checks') ve yapılandırma gerektiren kurallar için bir 'parameters' nesnesi içeren bir nesnedir (object[], zorunlu)
    • target: Kural setinin hedefi. Varsayılan olarak 'branch'tir. 'repository' yalnızca 'organization' ve 'enterprise' düzeyindeki kural setleri için geçerlidir. (string, isteğe bağlı)
  • custom_properties_read - Özel özellikleri oku

    • OAuth Challenge Kapsamları: repo, read:org, read:enterprise
    • enterprise: Enterprise kısa adı. Düzey 'enterprise' olduğunda zorunludur. (string, isteğe bağlı)
    • level: Özel özelliklerin yönetildiği düzey:
      • 'repository': Bir depoya atanan özel özellik DEĞERLERİ ('owner' ve 'repo' gerektirir).
      • 'organization': Bir kuruluş için özel özellik TANIMLARI (şema) ('org' gerektirir).
      • 'enterprise': Bir kuruluş için özel özellik TANIMLARI (şema) ('enterprise' gerektirir). (string, zorunlu)
    • org: Kuruluş adı. Düzey 'organization' olduğunda zorunludur. (string, isteğe bağlı)
    • owner: Depo sahibi. Düzey 'repository' olduğunda zorunludur. (string, isteğe bağlı)
    • repo: Depo adı. Düzey 'repository' olduğunda zorunludur. (string, isteğe bağlı)
  • custom_properties_write - Özel özellikleri ayarla

    • OAuth Challenge Kapsamları: repo, admin:org, admin:enterprise
    • enterprise: Kurumsal kısa adı. Seviye 'enterprise' olduğunda gereklidir. (string, isteğe bağlı)
    • level: Özel özelliklerin yönetildiği seviye:
      • 'repository': Bir depoya atanan özel özellik DEĞERLERİ ('owner' ve 'repo' gerektirir).
      • 'organization': Bir organizasyon için özel özellik TANIMLARI (şema) ('org' gerektirir).
      • 'enterprise': Bir kuruluş için özel özellik TANIMLARI (şema) ('enterprise' gerektirir). (string, zorunlu)
    • org: Organizasyon adı. Seviye 'organization' olduğunda gereklidir. (string, isteğe bağlı)
    • owner: Depo sahibi. Seviye 'repository' olduğunda gereklidir. (string, isteğe bağlı)
    • properties: Oluşturulacak veya güncellenecek özel özellikler. Depo seviyesinde her öğe bir değer atar ('property_name' ve 'value'); organizasyon ve kurumsal seviyelerde her öğe şemayı tanımlar ('property_name' ve 'value_type', ayrıca isteğe bağlı tanım alanları). (object[], zorunlu)
    • repo: Depo adı. Seviye 'repository' olduğunda gereklidir. (string, isteğe bağlı)
  • repository_ruleset_read - Depo kural setlerini oku

    • OAuth Challenge Kapsamları: repo, read:org, read:enterprise
    • actor_name: Kural süitlerini filtrelemek için GitHub kullanıcı hesabının kısa adı. 'list_rule_suites' yöntemi tarafından kullanılır. (string, isteğe bağlı)
    • branch: Dal adı. 'get_rules_for_branch' yöntemi için gereklidir. (string, isteğe bağlı)
    • enterprise: Kurumsal kısa adı. Seviye 'enterprise' olduğunda gereklidir. (string, isteğe bağlı)
    • evaluate_status: Kural süitlerini kural seti değerlendirme moduna göre filtrele. 'list_rule_suites' yöntemi tarafından kullanılır. (string, isteğe bağlı)
    • includes_parents: Daha üst seviyelerde yapılandırılmış ve aynı zamanda geçerli olan kural setlerini dahil et. Varsayılan olarak true'dur. Depo seviyesindeki 'get' ve 'list' yöntemleri tarafından kullanılır. (boolean, isteğe bağlı)
    • level: Kural setinin yapılandırıldığı seviye:
      • 'repository': Tek bir depodaki kural seti ('owner' ve 'repo' gerektirir).
      • 'organization': Bir organizasyondaki depoları kapsayan kural seti ('org' gerektirir).
      • 'enterprise': Bir kuruluştaki depoları kapsayan kural seti ('enterprise' gerektirir). (string, zorunlu)
    • method: Gerçekleştirilecek işlem:
      • 'get': Kimliğe göre belirli bir kural setini al ('ruleset_id' gerektirir). Her seviyede desteklenir.
      • 'list': Tüm kural setlerini listele. Her seviyede desteklenir.
      • 'get_rules_for_branch': Bir dala uygulanan tüm kuralları al ('branch' gerektirir). Yalnızca depo seviyesi.
      • 'list_rule_suites': Kural süitlerini, kuralların push'lara karşı değerlendirmelerini listele. Yalnızca depo ve organizasyon seviyeleri.
      • 'get_rule_suite': Kimliğe göre belirli bir kural süitini al ('rule_suite_id' gerektirir). Yalnızca depo ve organizasyon seviyeleri. (string, zorunlu)
    • org: Organizasyon adı. Seviye 'organization' olduğunda gereklidir. (string, isteğe bağlı)
    • owner: Depo sahibi. Seviye 'repository' olduğunda gereklidir. (string, isteğe bağlı)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • ref: Kural süitlerini filtrelemek için ref adı (dal, etiket vb.). 'list_rule_suites' yöntemi tarafından kullanılır. (string, isteğe bağlı)
    • repo: Depo adı. Seviye 'repository' olduğunda gereklidir. (string, isteğe bağlı)
    • repository_name: Kural süitlerini filtrelemek için depo adı. Organizasyon seviyesindeki 'list_rule_suites' yöntemi tarafından kullanılır. (string, isteğe bağlı)
    • rule_suite_id: Kural süiti kimliği. 'get_rule_suite' yöntemi için gereklidir. (number, isteğe bağlı)
    • rule_suite_result: Filtrelemek için kural süiti sonucu. 'list_rule_suites' yöntemi tarafından kullanılır. (string, isteğe bağlı)
    • ruleset_id: Kural seti kimliği. 'get' yöntemi için gereklidir. (number, isteğe bağlı)
    • time_period: Kural süitlerini filtrelemek için zaman aralığı. 'list_rule_suites' yöntemi tarafından kullanılır. (string, isteğe bağlı)
issue-opened Sorunlar
  • add_issue_comment - Soruna veya çekme isteğine yorum ekle

    • OAuth Challenge Kapsamları: repo
    • body: Yorum içeriği. Tepki verilmediği sürece gereklidir. (string, isteğe bağlı)
    • comment_id: Tepki verilecek sorun veya çekme isteği yorumunun sayısal kimliği. Yorumlara tepki vermek için bunu kullanın; sorunun veya çekme isteğinin kendisine tepki vermek için atlayın. body ile birleştirilemez. (integer, isteğe bağlı)
    • issue_number: Yorum yapılacak veya tepki verilecek sorun veya çekme isteği numarası. (number, zorunlu)
    • owner: Depo sahibi (string, zorunlu)
    • reaction: Eklenecek emoji tepkisi. body sağlanmadığı sürece gereklidir. (string, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
  • get_label - Bir depodan belirli bir etiketi al

    • OAuth Challenge Kapsamları: repo
    • name: Etiket adı. (string, zorunlu)
    • owner: Depo sahibi (kullanıcı adı veya organizasyon adı) (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • issue_read - Sorun ayrıntılarını al

    • OAuth Challenge Kapsamları: repo
    • issue_number: Sorunun numarası (number, zorunlu)
    • method: Tek bir sorun üzerinde gerçekleştirilecek okuma işlemi. Seçenekler şunlardır:
      1. get - Sorun ayrıntılarını al. Ayrıca en iyi çaba hiyerarşi bayraklarını döndürür (has_parent, has_children); parent ve sub_issues_summary isteğe bağlı ilişki özetleridir ve closed_by_pull_requests sorunu total_count olarak kapatacak şekilde yapılandırılmış çekme isteklerini artı en fazla 5 references olarak özetler.
      2. get_comments - Sorun yorumlarını al.
      3. get_sub_issues - Sorunun alt sorunlarını (alt öğelerini) al.
      4. get_parent - Bu sorun başka bir sorunun alt sorunuysa üst sorunu al.
      5. get_labels - Soruna atanan etiketleri al. (string, zorunlu)
    • owner: Deponun sahibi (string, zorunlu)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • repo: Deponun adı (string, zorunlu)
  • issue_write - Sorun/çekme isteği oluştur veya güncelle

    • OAuth Challenge Kapsamları: repo
    • MCP Uygulama Arayüzü: ui://github-mcp-server/issue-write
    • assignees: Bu soruna atanacak kullanıcı adları (string[], isteğe bağlı)
    • body: Sorun gövde içeriği (string, isteğe bağlı)
    • duplicate_of: Bu sorunun kopyası olduğu sorun numarası. state_reason 'duplicate' olduğunda gereklidir. (number, isteğe bağlı)
    • issue_fields: Ayarlanacak veya temizlenecek sorun alanı değerleri. Her öğe 'field_name' ve 'value', 'field_option_name' veya 'delete: true' öğelerinden tam olarak birini gerektirir. (object[], isteğe bağlı)
    • issue_number: Güncellenecek sorun numarası (number, isteğe bağlı)
    • labels: Bu soruna uygulanacak etiketler (string[], isteğe bağlı)
    • method: Tek bir sorun üzerinde gerçekleştirilecek yazma işlemi. Seçenekler şunlardır:
      • 'create' - yeni bir sorun oluşturur.
      • 'update' - mevcut bir sorunu günceller. (string, zorunlu)
    • milestone: Kilometre taşı numarası (number, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • parent_issue_number: Üst sorunun sorun numarası. Yalnızca yöntem 'create' olduğunda kullanılır ve issue_fields ile birleştirilemez. Yeni sorun oluşturulur ve aynı işlemde bu üst soruna eklenir. (number, isteğe bağlı)
    • parent_owner: Üst sorunun depo sahibi. parent_repo ile birlikte sağlanmalıdır. Her ikisini de atlamak için owner ve repo kullanın. Yalnızca yöntem 'create' olduğunda ve parent_issue_number sağlandığında kullanılır. (string, isteğe bağlı)
    • parent_repo: Üst sorunun depo adı. parent_owner ile birlikte sağlanmalıdır. Her ikisini de atlamak için owner ve repo kullanın. Yalnızca yöntem 'create' olduğunda ve parent_issue_number sağlandığında kullanılır. (string, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
    • state: Yeni durum (string, isteğe bağlı)
    • state_reason: Durum değişikliğinin nedeni. Durum değiştirilmediği sürece yok sayılır. (string, isteğe bağlı)
    • title: Sorun başlığı (string, isteğe bağlı)
    • type: Bu sorunun türü. Güncellemeler için geçerli türü kaldırmak üzere null iletin. Yalnızca bu depo için sorun türleri etkinse kullanın. Bu depo veya sahibi olan organizasyon için geçerli tür değerlerini almak üzere list_issue_types kullanın. Depo sorun türlerini desteklemiyorsa bu parametreyi atlayın. (string | null, isteğe bağlı)
  • list_issue_fields - Sorun alanlarını listele

    • OAuth Challenge Kapsamları: repo, read:org
    • owner: Deponun veya organizasyonun hesap sahibi. Ad büyük/küçük harfe duyarlı değildir. (string, zorunlu)
    • repo: Deponun adı. Sağlandığında, bu belirli depo için alanları döndürür (organizasyonundan devralınır). Atlanırsa, organizasyon düzeyindeki alanları doğrudan döndürür. (string, isteğe bağlı)
  • list_issue_types - Kullanılabilir sorun türlerini listele

    • OAuth Challenge Kapsamları: repo, read:org
    • owner: Deponun veya organizasyonun hesap sahibi. (string, zorunlu)
    • repo: Deponun adı. Sağlandığında, bu belirli depo için sorun türlerini döndürür. Atlanırsa, organizasyon düzeyindeki sorun türlerini doğrudan döndürür. (string, isteğe bağlı)
  • list_issues - Sorunları listele

    • OAuth Challenge Kapsamları: repo
    • after: Sayfalama için imleç. Önceki yanıttaki imleci kullanın. (string, isteğe bağlı)
    • direction: Sıralama yönü. Sağlanırsa, 'orderBy' de sağlanmalıdır. (string, isteğe bağlı)
    • field_filters: Özel sorun alanı değerlerine göre filtrele. Her girdi bir field_name ve bir değer alır; sunucu alanı arar ve değeri türüne dönüştürür (tek seçimli seçenek adı, metin, sayı veya YYYY-MM-DD tarihi). (object[], isteğe bağlı)
    • fields: Her sorun için döndürülecek alanların alt kümesi. Atlanırsa, tüm alanlar döndürülür. Yalnızca belirli alanlara ihtiyacınız olduğunda yanıt boyutunu azaltmak için bunu kullanın; özellikle 'body' ve 'field_values' alanlarını atlamak, sonuç başına en büyük veriyi düşürür. (string[], isteğe bağlı)
    • labels: Etiketlere göre filtrele (string[], isteğe bağlı)
    • orderBy: Sorunları alana göre sırala. Sağlanırsa, 'direction' de sağlanmalıdır. (string, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
    • since: Tarihe göre filtrele (ISO 8601 zaman damgası) (string, isteğe bağlı)
    • state: Duruma göre filtrele, sağlanmadığında varsayılan olarak hem açık hem de kapalı sorunlar döndürülür (string, isteğe bağlı)
  • search_issues - Sorunları ara

    • OAuth Challenge Kapsamları: repo
    • fields: Her sorun sonucu için döndürülecek alanların alt kümesi. Atlanırsa, tüm alanlar döndürülür. Yalnızca belirli alanlara ihtiyacınız olduğunda yanıt boyutunu azaltmak için bunu kullanın; özellikle 'body', 'reactions' ve 'labels' alanlarını atlamak, sonuç başına en büyük veriyi düşürür. (string[], isteğe bağlı)
    • order: Sıralama düzeni (string, isteğe bağlı)
    • owner: İsteğe bağlı depo sahibi. repo ile birlikte sağlanırsa, yalnızca bu depo için sorunlar listelenir. (string, isteğe bağlı)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • query: Doğal dil olarak arama sorgusu. Kullanıcı alternatif ifadeler verdiğinde, bunları OR ile birleştirmek yerine düz kelimeler olarak ekleyin. (string, zorunlu)
    • repo: İsteğe bağlı depo adı. owner ile birlikte sağlanırsa, yalnızca bu depo için sorunlar listelenir. (string, isteğe bağlı)
    • sort: Kategorilerin eşleşme sayısına göre sıralama alanı, varsayılan olarak en iyi eşleşme (string, isteğe bağlı)
  • sub_issue_write - Alt sorunu değiştir

    • OAuth Challenge Kapsamları: repo
    • after_id: Önceliklendirilecek alt sorunun kimliği (after_id VEYA before_id belirtilmelidir) (number, isteğe bağlı)
    • before_id: Önceliklendirilecek alt sorunun kimliği (after_id VEYA before_id belirtilmelidir) (number, isteğe bağlı)
    • issue_number: Üst sorunun numarası (number, zorunlu)
    • method: Tek bir alt sorun üzerinde gerçekleştirilecek eylem Seçenekler şunlardır:
      • 'add' - bir GitHub deposunda üst soruna alt sorun ekleyin.
      • 'remove' - bir GitHub deposunda üst sorundan alt sorunu kaldırın.
      • 'reprioritize' - bir GitHub deposunda üst sorun içindeki alt sorunların sırasını değiştirin. Yeni konumu belirtmek için 'after_id' veya 'before_id' kullanın. Sorun hiyerarşisini yazar. Bir alt sorunu yeni bir üst soruna taşımak için add ile replace_parent=true kullanın; yazılabilir bir üst alan yoktur. (string, zorunlu)
    • owner: Depo sahibi (string, zorunlu)
    • replace_parent: true olduğunda, alt sorunun mevcut üst sorununu değiştirir. Yalnızca 'add' yöntemiyle kullanın. (boolean, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
    • sub_issue_id: Eklenecek alt sorunun kimliği. Kimlik, sorun numarasıyla aynı değildir (number, zorunlu)
  • update_issue_comment - Sorun yorumunu güncelle

    • OAuth Challenge Kapsamları: repo
    • body: Yeni yorum içeriği (string, zorunlu)
    • comment_id: Güncellenecek sorun veya çekme isteği konuşma yorumunun sayısal kimliği. Çekme isteği inceleme yorumu kimliğini kullanmayın. (integer, zorunlu)
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
tag Etiketler
  • get_label - Bir depodan belirli bir etiketi al

    • OAuth Challenge Kapsamları: repo
    • name: Etiket adı. (string, zorunlu)
    • owner: Depo sahibi (kullanıcı adı veya organizasyon adı) (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • label_write - Depo etiketleri üzerinde yazma işlemleri

    • OAuth Challenge Kapsamları: repo
    • color: '#' öneki olmadan 6 karakterli onaltılık kod olarak etiket rengi (ör. 'f29513'). 'create' için zorunlu, 'update' için isteğe bağlı. (string, isteğe bağlı)
    • description: Etiket açıklama metni. 'create' ve 'update' için isteğe bağlı. (string, isteğe bağlı)
    • method: Gerçekleştirilecek işlem: 'create', 'update' veya 'delete' (string, zorunlu)
    • name: Etiket adı - tüm işlemler için zorunlu (string, zorunlu)
    • new_name: Etiket için yeni ad (yalnızca yeniden adlandırmak için 'update' yöntemiyle kullanılır) (string, isteğe bağlı)
    • owner: Depo sahibi (kullanıcı adı veya organizasyon adı) (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • list_label - Bir depodan etiketleri listele

    • OAuth Challenge Kapsamları: repo
    • after: Sayfalama için imleç. Önceki yanıttaki imleci kullanın. (string, isteğe bağlı)
    • owner: Depo sahibi (kullanıcı adı veya organizasyon adı) - tüm işlemler için zorunlu (string, zorunlu)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • repo: Depo adı - tüm işlemler için zorunlu (string, zorunlu)
bell Bildirimler
  • dismiss_notification - Bildirimi kapat

    • OAuth Challenge Kapsamları: notifications
    • state: Bildirimin yeni durumu (read/done) (string, zorunlu)
    • threadID: Bildirim dizisinin kimliği (string, zorunlu)
  • get_notification_details - Bildirim ayrıntılarını al

    • OAuth Challenge Kapsamları: notifications
    • notificationID: Bildirimin kimliği (string, zorunlu)
  • list_notifications - Bildirimleri listele

    • OAuth Challenge Kapsamları: notifications
    • before: Yalnızca belirtilen zamandan önce güncellenen bildirimleri göster (ISO 8601 biçimi) (string, isteğe bağlı)
    • filter: Bildirimleri filtrele, belirtilmediyse varsayılanı kullan. Okunan bildirimler, kullanıcı tarafından zaten kabul edilmiş olanlardır. Katılımcı bildirimler, kullanıcının doğrudan dahil olduğu, örneğin yorum yaptığı veya oluşturduğu sorunlar veya çekme istekleri gibi bildirimlerdir. (string, isteğe bağlı)
    • owner: İsteğe bağlı depo sahibi. repo ile birlikte sağlanırsa, yalnızca bu depo için bildirimler listelenir. (string, isteğe bağlı)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • repo: İsteğe bağlı depo adı. owner ile birlikte sağlanırsa, yalnızca bu depo için bildirimler listelenir. (string, isteğe bağlı)
    • since: Yalnızca belirtilen zamandan sonra güncellenen bildirimleri göster (ISO 8601 biçimi) (string, isteğe bağlı)
  • manage_notification_subscription - Bildirim aboneliğini yönet

    • OAuth Challenge Kapsamları: notifications
    • action: Gerçekleştirilecek eylem: bildirim aboneliğini yoksay, izle veya sil. (string, zorunlu)
    • notificationID: Bildirim dizisinin kimliği. (string, zorunlu)
  • manage_repository_notification_subscription - Depo bildirim aboneliğini yönet

    • OAuth Challenge Kapsamları: notifications
    • action: Gerçekleştirilecek eylem: depo bildirim aboneliğini yoksay, izle veya sil. (string, zorunlu)
    • owner: Deponun hesap sahibi. (string, zorunlu)
    • repo: Deponun adı. (string, zorunlu)
  • mark_all_notifications_read - Tüm bildirimleri okundu olarak işaretle

    • OAuth Challenge Kapsamları: notifications
    • lastReadAt: Bildirimlerin kontrol edildiği son noktayı açıklar (isteğe bağlı). Varsayılan: Şimdi (string, isteğe bağlı)
    • owner: İsteğe bağlı depo sahibi. repo ile birlikte sağlanırsa, yalnızca bu depo için bildirimler okundu olarak işaretlenir. (string, isteğe bağlı)
    • repo: İsteğe bağlı depo adı. owner ile birlikte sağlanırsa, yalnızca bu depo için bildirimler okundu olarak işaretlenir. (string, isteğe bağlı)
organization Organizasyonlar
  • search_orgs - Organizasyonları ara
    • OAuth Challenge Kapsamları: read:org
    • order: Sıralama düzeni (string, isteğe bağlı)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • query: Organizasyon arama sorgusu. Örnekler: 'microsoft', 'location:california', 'created:>=2025-01-01'. Arama otomatik olarak type:org kapsamına alınır. (string, zorunlu)
    • sort: Kategoriye göre sıralama alanı (string, isteğe bağlı)
project Projeler
  • projects_get - GitHub Projects kaynaklarının ayrıntılarını al

    • OAuth Challenge Kapsamları: read:project
    • field_id: Alanın kimliği. 'get_project_field' yöntemi için zorunlu. (number, isteğe bağlı)
    • field_names: Bir proje öğesi alınırken yanıta dahil edilecek belirli alan adları listesi (ör. ["Status", "Priority"]). Sunucu tarafında alan kimliklerine çözümlenir — yalnızca insan tarafından okunabilir adları bildiğinizde 'fields' yerine bunu iletin. 'fields' ile karşılıklı olarak özeldir — yalnızca birini sağlayın, ikisini değil. Yalnızca 'get_project_item' yöntemi için kullanılır. (string[], isteğe bağlı)
    • fields: Bir proje öğesi alınırken yanıta dahil edilecek belirli alan kimlikleri listesi (ör. ["102589", "985201", "169875"]). Ne 'fields' ne de 'field_names' sağlanmazsa, yalnızca başlık alanı dahil edilir. 'field_names' ile karşılıklı olarak özeldir — yalnızca birini sağlayın, ikisini değil. Yalnızca 'get_project_item' yöntemi için kullanılır. (string[], isteğe bağlı)
    • item_id: Öğenin kimliği. 'get_project_item' yöntemi için zorunlu. (number, isteğe bağlı)
    • method: Yürütülecek yöntem (string, zorunlu)
    • owner: Sahip (kullanıcı veya organizasyon girişi). Ad büyük/küçük harfe duyarlı değildir. (string, isteğe bağlı)
    • owner_type: Sahip türü (user veya org). Sağlanmazsa, otomatik olarak algılanır. (string, isteğe bağlı)
    • project_number: Projenin numarası. (number, isteğe bağlı)
    • status_update_id: Proje durum güncellemesinin düğüm kimliği. 'get_project_status_update' yöntemi için zorunlu. (string, isteğe bağlı)
    • view_id: Proje görünümünün düğüm kimliği. 'get_project_view' yöntemi için zorunlu. (string, isteğe bağlı)
  • projects_list - GitHub Projects kaynaklarını listele

    • OAuth Challenge Kapsamları: read:project
    • after: Önceki pageInfo.nextCursor'dan ileri sayfalama imleci. (string, isteğe bağlı)
    • before: Önceki pageInfo.prevCursor'dan geri sayfalama imleci (nadir). (string, isteğe bağlı)
    • field_names: Proje öğelerini listelerken eklenecek alan adları (ör. ["Status", "Priority"]). Sunucu tarafında alan kimliklerine çözümlenir — yalnızca insan tarafından okunabilir adları biliyorsanız 'fields' yerine bunu iletin. Çözümlenemeyen adlar yapılandırılmış bir hata döndürür. 'fields' ile karşılıklı olarak ayrıcalıklıdır — yalnızca birini sağlayın, ikisini birden değil. Yalnızca 'list_project_items' yöntemi için kullanılır. (string[], isteğe bağlı)
    • fields: Proje öğelerini listelerken eklenecek alan kimlikleri (ör. ["102589", "985201"]). KRİTİK: Alan değerlerini almak için her zaman sağlayın. Bu olmadan (ve 'field_names' olmadan) yalnızca başlıklar döndürülür. 'field_names' ile karşılıklı olarak ayrıcalıklıdır — yalnızca birini sağlayın, ikisini birden değil. Yalnızca 'list_project_items' yöntemi için kullanılır. (string[], isteğe bağlı)
    • method: Gerçekleştirilecek eylem (string, zorunlu)
    • owner: Sahip (kullanıcı veya kuruluş oturum açma adı). Ad büyük/küçük harfe duyarlı değildir. (string, zorunlu)
    • owner_type: Sahip türü (kullanıcı veya org). Sağlanmazsa, otomatik olarak her ikisi de denenir. (string, isteğe bağlı)
    • perPage: Sayfa başına sonuç (en fazla 50) (number, isteğe bağlı)
    • project_number: Projenin numarası. 'list_project_fields', 'list_project_items', 'list_project_views' ve 'list_project_status_updates' yöntemleri için zorunludur. (number, isteğe bağlı)
    • query: Filtre/sorgu dizesi. list_projects için: başlık metnine ve duruma göre filtrele (ör. "roadmap is:open"). list_project_items için: GitHub'ın proje filtreleme sözdizimini kullanan gelişmiş filtreleme. (string, isteğe bağlı)
  • projects_write - GitHub Projects'i yönet

    • OAuth Challenge Kapsamları: project
    • body: Durum güncellemesinin gövdesi (markdown). 'create_project_status_update' yöntemi için kullanılır. (string, isteğe bağlı)
    • field_name: Yineleme alanının adı (ör. 'Sprint'). 'create_iteration_field' yöntemi için zorunludur. (string, isteğe bağlı)
    • filter: Kaydedilmiş görünüm filtresi; güncellemede korumak için atlayın veya temizlemek için null iletin. (string | null, isteğe bağlı)
    • issue_number: Sorun numarası. item_type 'issue' olduğunda 'add_project_item' için zorunludur. Ayrıca öğeyi sorun numarasına göre çözümlemek için 'update_project_item' tarafından da kabul edilir (item_owner ve item_repo ile birleştirin). (number, isteğe bağlı)
    • item_id: Proje öğesi kimliği. 'delete_project_item' için zorunludur. 'update_project_item' için ya item_id ya da (item_owner + item_repo + issue_number) sağlayarak öğeyi soruna göre çözümleyin. (number, isteğe bağlı)
    • item_owner: Sorunu veya çekme isteğini içeren deponun sahibi (kullanıcı veya kuruluş). 'add_project_item' yöntemi için zorunludur. Ayrıca öğeyi sorun numarasına göre çözerken 'update_project_item' tarafından da kabul edilir. (string, isteğe bağlı)
    • item_repo: Sorunu veya çekme isteğini içeren deponun adı. 'add_project_item' yöntemi için zorunludur. Ayrıca öğeyi sorun numarasına göre çözerken 'update_project_item' tarafından da kabul edilir. (string, isteğe bağlı)
    • item_type: Öğenin türü, issue veya pull_request. 'add_project_item' yöntemi için zorunludur. (string, isteğe bağlı)
    • items: Üst düzey 'updated_field' ile güncellenecek öğeler. 'update_project_items' için zorunludur; bir döngüde 'update_project_item' çağırmak yerine bunu tercih edin. Her giriş tam olarak bir başvuru varyantıyla eşleşmelidir: 'node_id', sayısal 'item_id' veya 'item_owner' + 'item_repo' + 'issue_number'. Sınır: çağrı başına 50 öğe. (object[], isteğe bağlı)
    • iteration_duration: Alanın yinelemeleri için gün cinsinden süre (ör. haftalık için 7, iki haftalık için 14). 'create_iteration_field' yöntemi için zorunludur. (number, isteğe bağlı)
    • iterations: 'create_iteration_field' yöntemi için özel yinelemeler. Yalnızca değişen sürelere, aralarında boşluklara veya belirli başlıklara sahip yinelemelere ihtiyacınız olduğunda ayarlayın. Aksi takdirde atlayın: GitHub, 'start_date' üzerinde 'iteration_duration' günlük üç yinelemeyi otomatik olarak oluşturur; bu çoğu durumda doğru seçimdir. (object[], isteğe bağlı)
    • layout: Görünüm düzeni; görünüm oluştururken zorunludur. (string, isteğe bağlı)
    • method: Yürütülecek yöntem (string, zorunlu)
    • name: Görünüm adı; görünüm oluştururken zorunludur. (string, isteğe bağlı)
    • owner: Proje sahibi (kullanıcı veya kuruluş oturum açma adı). Ad büyük/küçük harfe duyarlı değildir. (string, zorunlu)
    • owner_type: Sahip türü (kullanıcı veya org). 'create_project' yöntemi için zorunludur. Diğer yöntemler için sağlanmazsa otomatik olarak algılanır. (string, isteğe bağlı)
    • project_number: Projenin numarası. 'create_project' dışındaki tüm yöntemler için zorunludur. (number, isteğe bağlı)
    • pull_request_number: Çekme isteği numarası ('add_project_item' yöntemi için item_type 'pull_request' olduğunda kullanın). issue_number veya pull_request_number sağlayın. (number, isteğe bağlı)
    • start_date: YYYY-AA-GG biçiminde başlangıç tarihi. 'create_project_status_update' ve 'create_iteration_field' yöntemleri için kullanılır. (string, isteğe bağlı)
    • status: Projenin durumu. 'create_project_status_update' yöntemi için kullanılır. (string, isteğe bağlı)
    • target_date: Durum güncellemesinin hedef tarihi YYYY-AA-GG biçiminde. 'create_project_status_update' yöntemi için kullanılır. (string, isteğe bağlı)
    • title: Proje başlığı. 'create_project' yöntemi için zorunludur. (string, isteğe bağlı)
    • updated_field: Uygulanacak alan/değer, {"id": 123, "value": ...} veya {"name": "Status", "value": ...} kullanarak; null alanı temizler. 'update_project_item' ve 'update_project_items' için zorunludur; burada bir üst düzey alan/değer bir toplu işteki her öğeye uygulanır. 'update_project_item' SINGLE_SELECT alanları için ad biçimi seçenek adlarını kabul eder; kimlik biçimi bir seçenek kimliği bekler. (object, isteğe bağlı)
    • view_id: Güncelleme veya silme için proje görünümü düğüm kimliği; owner/project_number'a ait olmalıdır. (string, isteğe bağlı)
    • visible_field_names: Oluştururken gösterilecek veya güncellemede değiştirilecek sıralı proje alan adları; güncellemede korumak için atlayın veya sıfırlamak için [] iletin. visible_fields ile karşılıklı olarak ayrıcalıklıdır. Roadmap yalnızca [] kabul eder. (string[], isteğe bağlı)
    • visible_fields: Oluştururken gösterilecek veya güncellemede değiştirilecek sıralı proje alan veritabanı kimlikleri; güncellemede korumak için atlayın veya sıfırlamak için [] iletin. visible_field_names ile karşılıklı olarak ayrıcalıklıdır. Roadmap yalnızca [] kabul eder. (string[], isteğe bağlı)
git-pull-request Çekme İstekleri
  • add_comment_to_pending_review - İstek sahibinin en son bekleyen çekme isteği incelemesine inceleme yorumu ekle

    • OAuth Challenge Kapsamları: repo
    • body: İnceleme yorumunun metni (string, zorunlu)
    • line: Yorumun uygulandığı çekme isteği farkındaki blob satırı. Çok satırlı yorumlar için aralığın son satırı (number, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • path: Yorum gerektiren dosyanın göreli yolu (string, zorunlu)
    • pullNumber: Çekme isteği numarası (number, zorunlu)
    • repo: Depo adı (string, zorunlu)
    • side: Yorum yapılacak farkın tarafı. LEFT önceki durumu, RIGHT yeni durumu gösterir (string, isteğe bağlı)
    • startLine: Çok satırlı yorumlar için yorumun uygulandığı aralığın ilk satırı (number, isteğe bağlı)
    • startSide: Çok satırlı yorumlar için yorumun uygulandığı farkın başlangıç tarafı. LEFT önceki durumu, RIGHT yeni durumu gösterir (string, isteğe bağlı)
    • subjectType: Yorumun hedeflendiği düzey (string, zorunlu)
  • add_reply_to_pull_request_comment - Çekme isteği yorumuna yanıt ekle

    • OAuth Challenge Kapsamları: repo
    • body: Yanıtın metni. reaction sağlanmadıkça zorunludur. (string, isteğe bağlı)
    • commentId: Yanıtlanacak veya tepki verilecek çekme isteği inceleme yorumunun sayısal kimliği. Bir #discussion_r... bağlantısındaki sayıyı kullanın, GraphQL iş parçacığı düğüm kimliğini (PRRT_...) değil. (number, zorunlu)
    • owner: Depo sahibi (string, zorunlu)
    • pullNumber: Çekme isteği numarası. body sağlandığında zorunludur. (number, isteğe bağlı)
    • reaction: Eklenecek emoji tepkisi. body sağlanmadıkça zorunludur. (string, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
  • create_pull_request - Yeni çekme isteği aç

    • OAuth Challenge Kapsamları: repo
    • MCP Uygulama Arayüzü: ui://github-mcp-server/pr-write
    • base: Birleştirilecek dal (string, zorunlu)
    • body: PR açıklaması (string, isteğe bağlı)
    • draft: Taslak PR olarak oluştur (boolean, isteğe bağlı)
    • head: Değişiklikleri içeren dal (string, zorunlu)
    • maintainer_can_modify: Bakımcı düzenlemelerine izin ver (boolean, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
    • reviewers: İnceleme istenecek GitHub kullanıcı adları veya ORG/ekip-rumuzu ekip inceleyicileri (string[], isteğe bağlı)
    • title: PR başlığı (string, zorunlu)
  • list_pull_requests - Çekme isteklerini listele

    • OAuth Challenge Kapsamları: repo
    • base: Temel dala göre filtrele (string, isteğe bağlı)
    • direction: Sıralama yönü (string, isteğe bağlı)
    • fields: Her çekme isteği için döndürülecek alanların alt kümesi. Atlanırsa tüm alanlar döndürülür. Yalnızca belirli alanlara ihtiyacınız olduğunda yanıt boyutunu azaltmak için bunu kullanın; özellikle 'body'yi atlamak sonuç başına en büyük veriyi düşürür. (string[], isteğe bağlı)
    • head: Baş kullanıcı/org ve dala göre filtrele (string, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • page: Sayfalama için sayfa numarası (en az 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (en az 1, en fazla 100) (number, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
    • sort: Sıralama ölçütü (string, isteğe bağlı)
    • state: Duruma göre filtrele (string, isteğe bağlı)
  • merge_pull_request - Çekme isteğini birleştir

    • OAuth Challenge Kapsamları: repo
    • commit_message: Birleştirme commit'i için ek ayrıntı (string, isteğe bağlı)
    • commit_title: Birleştirme commit'i için başlık (string, isteğe bağlı)
    • expectedHeadSha: Çekme isteğinin HEAD referansının beklenen SHA'sı (string, isteğe bağlı)
    • merge_method: Birleştirme yöntemi (string, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • pullNumber: Çekme isteği numarası (number, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • pull_request_read - Tek bir pull request için ayrıntıları alır

    • OAuth Challenge Kapsamları: repo
    • after: Sayfalama için imleç, yalnızca get_review_comments yöntemi tarafından kullanılır. Sonraki sayfayı getirmek için önceki sayfanın PageInfo'sundaki endCursor değerini iletin. (dize, isteğe bağlı)
    • method: GitHub'dan hangi pull request verilerinin alınması gerektiğini belirten eylem. Olası seçenekler:
      1. get - Belirli bir pull request'in ayrıntılarını alır.
      2. get_diff - Bir pull request'in diff'ini alır.
      3. get_status - Bir pull request'teki head commit'in birleşik commit durumunu alır.
      4. get_files - Bir pull request'te değiştirilen dosyaların listesini alır. Döndürülen sonuç sayısını kontrol etmek için sayfalama parametreleriyle birlikte kullanın.
      5. get_commits - Bir pull request'teki commit'lerin listesini alır. Döndürülen sonuç sayısını kontrol etmek için sayfalama parametreleriyle birlikte kullanın.
      6. get_review_comments - Bir pull request'teki inceleme konularını alır. Her konu, pull request incelemeleri sırasında aynı kod konumunda yapılan mantıksal olarak gruplandırılmış inceleme yorumlarını içerir. Konu meta verilerini ve boş değer alabilen geçerli ve orijinal satır aralığı koordinatlarına (line, start_line, original_line, original_start_line) sahip yorumları döndürür. Geçerli koordinatlar, örneğin güncel olmayan yorumlar için kullanılamadığında atlanır. Sonuçları kontrol etmek için imleç tabanlı sayfalama (perPage, after) kullanın.
      7. get_reviews - Bir pull request'teki incelemeleri alır. İnceleme yorumları istendiğinde get_review_comments yöntemini kullanın. Döndürülen sonuç sayısını kontrol etmek için sayfalama parametreleriyle birlikte kullanın.
      8. get_comments - Bir pull request'teki yorumları alır. Kullanıcı özellikle inceleme yorumlarını istemiyorsa bunu kullanın. Döndürülen sonuç sayısını kontrol etmek için sayfalama parametreleriyle birlikte kullanın.
      9. get_check_runs - Bir pull request'in head commit'i için check run'larını alır. Check run'lar, PR üzerinde çalışan bireysel CI/CD işleri ve kontrolleridir. (dize, zorunlu)
    • owner: Depo sahibi (dize, zorunlu)
    • page: Sayfalama için sayfa numarası (min 1) (sayı, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (sayı, isteğe bağlı)
    • pullNumber: Pull request numarası (sayı, zorunlu)
    • repo: Depo adı (dize, zorunlu)
  • pull_request_review_write - Pull request incelemelerinde yazma işlemleri (oluşturma, gönderme, silme)

    • OAuth Challenge Kapsamları: repo
    • body: İnceleme yorumu metni (dize, isteğe bağlı)
    • commitID: İncelenecek commit'in SHA'sı (dize, isteğe bağlı)
    • event: Gerçekleştirilecek inceleme eylemi. (dize, isteğe bağlı)
    • method: Pull request incelemesinde gerçekleştirilecek yazma işlemi. (dize, zorunlu)
    • owner: Depo sahibi (dize, zorunlu)
    • pullNumber: Pull request numarası (sayı, zorunlu)
    • repo: Depo adı (dize, zorunlu)
    • threadId: İnceleme konusunun düğüm kimliği (ör. PRRT_kwDOxxx). resolve_thread ve unresolve_thread yöntemleri için gereklidir. Konu kimliklerini pull_request_read'den get_review_comments yöntemiyle alın. (dize, isteğe bağlı)
  • search_pull_requests - Pull request'leri ara

    • OAuth Challenge Kapsamları: repo
    • fields: Her pull request sonucu için döndürülecek alanların alt kümesi. Atlanırsa tüm alanlar döndürülür. Yalnızca belirli alanlara ihtiyacınız olduğunda yanıt boyutunu azaltmak için bunu kullanın; özellikle 'body', 'reactions' ve 'labels' alanlarının atlanması, sonuç başına en büyük veriyi düşürür. (dize[], isteğe bağlı)
    • order: Sıralama düzeni (dize, isteğe bağlı)
    • owner: İsteğe bağlı depo sahibi. repo ile birlikte sağlanırsa yalnızca bu depo için pull request'ler listelenir. (dize, isteğe bağlı)
    • page: Sayfalama için sayfa numarası (min 1) (sayı, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (sayı, isteğe bağlı)
    • query: GitHub pull request arama sözdizimini kullanan arama sorgusu (dize, zorunlu)
    • repo: İsteğe bağlı depo adı. owner ile birlikte sağlanırsa yalnızca bu depo için pull request'ler listelenir. (dize, isteğe bağlı)
    • sort: Kategorilerin eşleşme sayısına göre sıralama alanı, varsayılan olarak en iyi eşleşme (dize, isteğe bağlı)
  • update_pull_request - Pull request'i düzenle

    • OAuth Challenge Kapsamları: repo
    • MCP Uygulama Arayüzü: ui://github-mcp-server/pr-edit
    • base: Yeni temel dal adı (dize, isteğe bağlı)
    • body: Yeni açıklama (dize, isteğe bağlı)
    • draft: Pull request'i taslak (true) veya incelemeye hazır (false) olarak işaretle (boolean, isteğe bağlı)
    • maintainer_can_modify: Bakımcı düzenlemelerine izin ver (boolean, isteğe bağlı)
    • owner: Depo sahibi (dize, zorunlu)
    • pullNumber: Güncellenecek pull request numarası (sayı, zorunlu)
    • repo: Depo adı (dize, zorunlu)
    • reviewers: İnceleme istenecek GitHub kullanıcı adları veya ORG/ekip-slangı ekip inceleyenleri (dize[], isteğe bağlı)
    • state: Yeni durum (dize, isteğe bağlı)
    • title: Yeni başlık (dize, isteğe bağlı)
  • update_pull_request_branch - Pull request dalını güncelle

    • OAuth Challenge Kapsamları: repo
    • expectedHeadSha: Pull request'in HEAD ref'inin beklenen SHA'sı (dize, isteğe bağlı)
    • owner: Depo sahibi (dize, zorunlu)
    • pullNumber: Pull request numarası (sayı, zorunlu)
    • repo: Depo adı (dize, zorunlu)
repo Depolar
  • create_branch - Dal oluştur

    • OAuth Challenge Kapsamları: repo
    • branch: Yeni dal için ad (dize, zorunlu)
    • from_branch: Kaynak dal (varsayılan olarak depo varsayılanı) (dize, isteğe bağlı)
    • owner: Depo sahibi (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
  • create_or_update_file - Dosya oluştur veya güncelle

    • OAuth Challenge Kapsamları: repo, workflow
    • allow_symlink_write: Sembolik bir bağlantının kendisini güncellemek için true olarak ayarlayın; içerik onun yeni hedef yolu olmalıdır. (boolean, isteğe bağlı)
    • branch: Dosyanın oluşturulacağı/güncelleneceği dal (dize, zorunlu)
    • content: Dosyanın içeriği, yazıldığında tam olarak görünmesi gerektiği gibi. Base64 kodlamayın; bu sunucu REST API'yi çağırmadan önce bunu yapar. (dize, zorunlu)
    • message: Commit mesajı (dize, zorunlu)
    • owner: Depo sahibi (kullanıcı adı veya kuruluş) (dize, zorunlu)
    • path: Dosyanın oluşturulacağı/güncelleneceği yol (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
    • sha: Değiştirilen dosyanın blob SHA'sı. Dosya zaten mevcutsa gereklidir. Aynı sahip, depo ve yol ile ref'i bu aracın dal değerine ayarlayarak get_file_contents ile alın. (dize, isteğe bağlı)
  • create_repository - Depo oluştur

    • OAuth Challenge Kapsamları: repo
    • autoInit: README ile başlat (boolean, isteğe bağlı)
    • description: Depo açıklaması (dize, isteğe bağlı)
    • name: Depo adı (dize, zorunlu)
    • organization: Deponun oluşturulacağı kuruluş (kişisel hesabınızda oluşturmak için atlayın) (dize, isteğe bağlı)
    • private: Deponun özel olup olmayacağı. Atlanırsa varsayılan olarak true (özel) olur. (boolean, isteğe bağlı)
  • delete_file - Dosyayı sil

    • OAuth Challenge Kapsamları: repo, workflow
    • branch: Dosyanın silineceği dal (dize, zorunlu)
    • message: Commit mesajı (dize, zorunlu)
    • owner: Depo sahibi (kullanıcı adı veya kuruluş) (dize, zorunlu)
    • path: Silinecek dosyanın yolu (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
  • delete_repository - Depoyu sil

    • OAuth Challenge Kapsamları: delete_repo, repo
    • owner: Depo sahibi (kullanıcı adı veya kuruluş) (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
  • fork_repository - Depoyu çatalla

    • OAuth Challenge Kapsamları: repo
    • organization: Çatallanacak kuruluş (dize, isteğe bağlı)
    • owner: Depo sahibi (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
  • get_commit - Commit ayrıntılarını al

    • OAuth Challenge Kapsamları: repo
    • detail: Değiştirilen dosyalar için eklenecek ayrıntı düzeyi. "none" istatistikleri ve dosyaları tamamen atlar. "stats" (varsayılan) dosya başına meta verileri içerir: dosya adı, durum ve kod satırı sayıları (eklemeler, silmeler, değişiklikler), yama içeriği olmadan. "full_patch" ayrıca her dosya için birleşik diff içeriğini içerir ve çok büyük olabilir. (dize, isteğe bağlı)
    • owner: Depo sahibi (dize, zorunlu)
    • page: Sayfalama için sayfa numarası (min 1) (sayı, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (sayı, isteğe bağlı)
    • repo: Depo adı (dize, zorunlu)
    • sha: Commit SHA'sı, dal adı veya etiket adı (dize, zorunlu)
  • get_file_contents - Dosya veya dizin içeriklerini al

    • OAuth Challenge Kapsamları: repo
    • fields: Yol bir dizin olduğunda her girdi için döndürülecek alanların alt kümesi. Atlanırsa tüm alanlar döndürülür. Yol tek bir dosya olduğunda yok sayılır. Dizinleri listelerken ve yalnızca belirli alanlara ihtiyacınız olduğunda, ör. yalnızca 'name' ve 'type', yanıt boyutunu azaltmak için bunu kullanın. (dize[], isteğe bağlı)
    • owner: Depo sahibi (kullanıcı adı veya kuruluş) (dize, zorunlu)
    • path: Dosya/dizin yolu (dize, isteğe bağlı)
    • ref: refs/tags/{tag}, refs/heads/{branch} veya refs/pull/{pr_number}/head gibi isteğe bağlı git ref'lerini kabul eder (dize, isteğe bağlı)
    • repo: Depo adı (dize, zorunlu)
    • sha: İsteğe bağlı commit SHA'sını kabul eder. Belirtilirse ref yerine kullanılır (dize, isteğe bağlı)
  • get_latest_release - En son sürümü al

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
  • get_release_by_tag - Etiket adına göre bir sürüm al

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
    • tag: Etiket adı (ör. 'v1.0.0') (dize, zorunlu)
  • get_tag - Etiket ayrıntılarını al

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (dize, zorunlu)
    • repo: Depo adı (dize, zorunlu)
    • tag: Etiket adı (dize, zorunlu)
  • list_branches - Dalları listele

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (dize, zorunlu)
    • page: Sayfalama için sayfa numarası (min 1) (sayı, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (sayı, isteğe bağlı)
    • repo: Depo adı (dize, zorunlu)
  • list_commits - Commit'leri listele

    • OAuth Challenge Kapsamları: repo
    • author: Commit'leri filtrelemek için yazar kullanıcı adı veya e-posta adresi (string, isteğe bağlı)
    • fields: Her commit için döndürülecek alanların alt kümesi. Atlanırsa, tüm alanlar döndürülür. Yalnızca belirli alanlara ihtiyacınız olduğunda yanıt boyutunu azaltmak için kullanın, örn. yalnızca 'sha' ve 'html_url'. (string[], isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • path: Yalnızca bu dosya yolunu içeren commit'ler döndürülür (string, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
    • sha: Commit'leri listelemek için commit SHA, dal veya etiket adı. Sağlanmazsa, deponun varsayılan dalı kullanılır. Bir commit SHA sağlanırsa, o SHA'ya kadar olan commit'ler listelenir. (string, isteğe bağlı)
    • since: Yalnızca bu tarihten sonraki commit'ler döndürülür (ISO 8601 formatı: YYYY-MM-DDTHH:MM:SSZ veya YYYY-MM-DD) (string, isteğe bağlı)
    • until: Yalnızca bu tarihten önceki commit'ler döndürülür (ISO 8601 formatı: YYYY-MM-DDTHH:MM:SSZ veya YYYY-MM-DD) (string, isteğe bağlı)
  • list_releases - Sürümleri listele

    • OAuth Challenge Kapsamları: repo
    • fields: Her sürüm için döndürülecek alanların alt kümesi. Atlanırsa, tüm alanlar döndürülür. Yalnızca belirli alanlara ihtiyacınız olduğunda yanıt boyutunu azaltmak için kullanın; özellikle 'body' alanını atlamak, sürüm başına en büyük veriyi düşürür. (string[], isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
  • list_repository_collaborators - Depo işbirlikçilerini listele

    • OAuth Challenge Kapsamları: repo
    • affiliation: Üyelik türüne göre filtrele. Şunlardan biri olabilir: 'outside' (dış işbirlikçiler), 'direct' (kuruluş üyeliğinden bağımsız olarak izinleri olanlar), 'all' (tüm işbirlikçiler). Varsayılan: 'all' (string, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • page: Sayfalama için sayfa numarası (varsayılan 1, min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (varsayılan 30, min 1, max 100) (number, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
  • list_tags - Etiketleri listele

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (string, zorunlu)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
  • push_files - Depoya dosya gönder

    • OAuth Challenge Kapsamları: repo, workflow
    • branch: Gönderilecek dal (string, zorunlu)
    • files: Gönderilecek dosya nesneleri dizisi; her nesne path (string) ve content (string) içerir (object[], zorunlu)
    • message: Commit mesajı (string, zorunlu)
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • search_code - Kod ara

    • OAuth Challenge Kapsamları: repo
    • fields: Her kod arama sonucu için döndürülecek alanların alt kümesi. Atlanırsa, tüm alanlar döndürülür. Yalnızca belirli alanlara ihtiyacınız olduğunda yanıt boyutunu azaltmak için kullanın; özellikle 'repository' ve 'text_matches' alanlarını atlamak, sonuç başına en büyük veriyi düşürür. (string[], isteğe bağlı)
    • order: Sonuçlar için sıralama düzeni (string, isteğe bağlı)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • query: Arama sorgusu (GitHub kod arama REST). Terimler arasında örtük AND; tam eşleşme için OR, NOT ve "quoted phrase" destekler. Niteleyiciler: repo:owner/repo, org:, user:, language:, path:dir (ön ek eşleşmesi), filename:exact.ext, extension:, in:file, in:path, size:, is:archived, is:fork. Maks 256 karakter. Örnekler: WithContext language:go org:github; "package main" repo:o/r; func extension:go path:cmd repo:o/r; NOT TODO language:go repo:o/r. (string, zorunlu)
    • sort: Sıralama alanı (yalnızca 'indexed') (string, isteğe bağlı)
  • search_commits - Commit ara

    • OAuth Challenge Kapsamları: repo
    • order: Sıralama düzeni (string, isteğe bağlı)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • query: Commit arama sorgusu (GitHub commit arama REST). Yalnızca varsayılan daldaki commit mesajlarını arar. Aramayı repo:owner/repo, org: veya user: ile kapsamlandırın (kapsam niteleyicisi olmayan sorgular GitHub'ın tamamında eşleşir ve genellikle istediğiniz şey değildir). Diğer niteleyiciler: author:, committer:, author-name:, committer-name:, author-email:, committer-email:, author-date:, committer-date: (>, <, >=, <= ve YYYY-MM-DD..YYYY-MM-DD aralıklarını destekler), merge:true|false, hash:, tree:, parent:, is:public. Örnekler: repo:owner/repo fix panic; org:github author:defunkt committer-date:>=2024-01-01; "refactor cache" repo:o/r; hash:abc1234 repo:o/r. (string, zorunlu)
    • sort: Yazara veya committer tarihine göre sırala (varsayılan en iyi eşleşme) (string, isteğe bağlı)
  • search_repositories - Depo ara

    • OAuth Challenge Kapsamları: repo
    • minimal_output: Minimal depo bilgisi döndür (varsayılan: true). false olduğunda, modern istemciler ek küratörlü depo ayrıntıları alır, tam GitHub API nesnesini değil. Eski istemciler tam GitHub API depo nesnelerini korur. (boolean, isteğe bağlı)
    • order: Sıralama düzeni (string, isteğe bağlı)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • query: Depo arama sorgusu. Örnekler: 'machine learning in:name stars:>1000 language:python', 'topic:react', 'user:facebook'. Hassas filtreleme için gelişmiş arama sözdizimini destekler. (string, zorunlu)
    • sort: Depoları alana göre sırala, varsayılan en iyi eşleşme (string, isteğe bağlı)
shield-lock Gizli Tarama Koruması
  • get_secret_scanning_alert - Gizli tarama uyarısını al

    • OAuth Challenge Kapsamları: security_events
    • alertNumber: Uyarının numarası. (number, zorunlu)
    • owner: Deponun sahibi. (string, zorunlu)
    • repo: Deponun adı. (string, zorunlu)
  • list_secret_scanning_alerts - Gizli tarama uyarılarını listele

    • OAuth Challenge Kapsamları: security_events
    • owner: Deponun sahibi. (string, zorunlu)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • repo: Deponun adı. (string, zorunlu)
    • resolution: Çözüm durumuna göre filtrele (string, isteğe bağlı)
    • secret_type: Döndürülecek gizli türlerin virgülle ayrılmış listesi. Tüm varsayılan gizli desenleri döndürülür. Genel desenleri döndürmek için parametrede token ad(lar)ını iletin. (string, isteğe bağlı)
    • state: Duruma göre filtrele (string, isteğe bağlı)
shield Güvenlik Danışmanlıkları
  • get_global_security_advisory - Küresel bir güvenlik danışmanlığı al

    • OAuth Challenge Kapsamları: security_events
    • ghsaId: GitHub Güvenlik Danışmanlığı Kimliği (format: GHSA-xxxx-xxxx-xxxx). (string, zorunlu)
  • list_global_security_advisories - Küresel güvenlik danışmanlıklarını listele

    • OAuth Challenge Kapsamları: security_events
    • affects: Danışmanlıkları etkilenen pakete veya sürüme göre filtrele (örn. "package1,package2@1.0.0"). (string, isteğe bağlı)
    • cveId: CVE Kimliğine göre filtrele. (string, isteğe bağlı)
    • cwes: Common Weakness Enumeration Kimliklerine göre filtrele (örn. ["79", "284", "22"]). (string[], isteğe bağlı)
    • ecosystem: Paket ekosistemine göre filtrele. (string, isteğe bağlı)
    • ghsaId: GitHub Güvenlik Danışmanlığı Kimliğine göre filtrele (format: GHSA-xxxx-xxxx-xxxx). (string, isteğe bağlı)
    • isWithdrawn: Yalnızca geri çekilmiş danışmanlıkların döndürülüp döndürülmeyeceği. (boolean, isteğe bağlı)
    • modified: Yayın veya güncelleme tarihine veya tarih aralığına göre filtrele (ISO 8601 tarih veya aralık). (string, isteğe bağlı)
    • published: Yayın tarihine veya tarih aralığına göre filtrele (ISO 8601 tarih veya aralık). (string, isteğe bağlı)
    • severity: Önem derecesine göre filtrele. (string, isteğe bağlı)
    • type: Danışmanlık türü. (string, isteğe bağlı)
    • updated: Güncelleme tarihine veya tarih aralığına göre filtrele (ISO 8601 tarih veya aralık). (string, isteğe bağlı)
  • list_org_repository_security_advisories - Kuruluş depo güvenlik danışmanlıklarını listele

    • OAuth Challenge Kapsamları: security_events
    • direction: Sıralama yönü. (string, isteğe bağlı)
    • org: Kuruluş girişi. (string, zorunlu)
    • sort: Sıralama alanı. (string, isteğe bağlı)
    • state: Danışmanlık durumuna göre filtrele. (string, isteğe bağlı)
  • list_repository_security_advisories - Depo güvenlik danışmanlıklarını listele

    • OAuth Challenge Kapsamları: security_events
    • direction: Sıralama yönü. (string, isteğe bağlı)
    • owner: Deponun sahibi. (string, zorunlu)
    • repo: Deponun adı. (string, zorunlu)
    • sort: Sıralama alanı. (string, isteğe bağlı)
    • state: Danışmanlık durumuna göre filtrele. (string, isteğe bağlı)
star Yıldızlayanlar
  • list_starred_repositories - Yıldızlanan depoları listele

    • OAuth Challenge Kapsamları: repo
    • direction: Sonuçların sıralanacağı yön. (string, isteğe bağlı)
    • page: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, max 100) (number, isteğe bağlı)
    • sort: Sonuçların nasıl sıralanacağı. 'created' (deponun yıldızlandığı zaman) veya 'updated' (depoya en son push yapıldığı zaman) olabilir. (string, isteğe bağlı)
    • username: Yıldızlanan depoların listeleneceği kullanıcı adı. Varsayılan olarak kimliği doğrulanmış kullanıcıdır. (string, isteğe bağlı)
  • star_repository - Depoyu yıldızla

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • unstar_repository - Deponun yıldızını kaldır

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
people Kullanıcılar - **search_users** - Kullanıcıları ara - **OAuth Challenge Kapsamları**: `repo` - `order`: Sıralama düzeni (string, isteğe bağlı) - `page`: Sayfalama için sayfa numarası (min 1) (number, isteğe bağlı) - `perPage`: Sayfalama için sayfa başına sonuç sayısı (min 1, max 100) (number, isteğe bağlı) - `query`: Kullanıcı arama sorgusu. Örnekler: 'john smith', 'location:seattle', 'followers:>100'. Arama otomatik olarak type:user kapsamına alınır. (string, zorunlu) - `sort`: Kullanıcıları takipçi sayısına, depo sayısına veya kişinin GitHub'a katılım zamanına göre sırala. (string, isteğe bağlı)

Uzak GitHub MCP Sunucusunda Ek Araçlar

Copilot
  • create_pull_request_with_copilot - GitHub Copilot kodlama ajanı ile görevi gerçekleştir
    • owner: Depo sahibi. Sahibi tahmin edebilirsiniz, ancak devam etmeden önce kullanıcıyla doğrulayın. (string, zorunlu)
    • repo: Depo adı. Depo adını tahmin edebilirsiniz, ancak devam etmeden önce kullanıcıyla doğrulayın. (string, zorunlu)
    • problem_statement: Gerçekleştirilecek görevin ayrıntılı açıklaması (ör. 'X yapan bir özellik uygula', 'Y hatasını düzelt', vb.) (string, zorunlu)
    • title: Oluşturulacak pull request için başlık (string, zorunlu)
    • base_ref: Ajanın çalışmaya başlayacağı Git referansı (ör. dal). Belirtilmezse, deponun varsayılan dalına varsayılan olarak ayarlanır (string, isteğe bağlı)
Copilot Spaces
  • Kimlik doğrulama notu

    • İnce taneli PAT'ler klasik PAT kapsam filtrelemesi tarafından gizlenmez, bu nedenle bu araçlar, belirteç bunları kullanamasa bile görünebilir.
    • Kuruluş sahipli spaces için, ince taneli PAT'ler sahip olan kuruluşa kurulmalı ve organization_copilot_spaces: read içermelidir.
    • Kuruluş sahipli bir space depo destekli kaynaklar içeriyorsa, belirteç ayrıca başvurulan her depoya erişime sahip olmalıdır, aksi takdirde space bulunamadı olarak değerlendirilebilir.
  • get_copilot_space - Copilot Space Al

    • owner: Space'in sahibi. (string, zorunlu)
    • name: Space'in adı. (string, zorunlu)
  • list_copilot_spaces - Copilot Spaces'leri Listele

GitHub Destek Dokümanları Arama
  • github_support_docs_search - GitHub ürün ve destek sorularını yanıtlamakla ilgili dokümantasyonu al. Destek konuları şunları içerir: GitHub Actions Workflows, Kimlik Doğrulama, GitHub Destek Talepleri, Pull Request Uygulamaları, Depo Bakımı, GitHub Pages, GitHub Packages, GitHub Discussions, Copilot Spaces
    • query: Kullanıcının yanıtlanması gereken soru hakkındaki girdisi. Bu, en son ham düzenlenmemiş kullanıcı mesajıdır. Kullanıcı mesajını her zaman olduğu gibi bırakmalısınız, asla değiştirmemelisiniz. (string, zorunlu)

Salt Okunur Mod

Sunucuyu salt okunur modda çalıştırmak için --read-only bayrağını kullanabilirsiniz. Bu yalnızca salt okunur araçlar sunar ve depolar, sorunlar, pull request'ler vb. üzerinde herhangi bir değişiklik yapılmasını önler.

./github-mcp-server --read-only

Docker kullanırken, salt okunur modu bir ortam değişkeni olarak iletebilirsiniz:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_READ_ONLY=1 \
  ghcr.io/github/github-mcp-server

Kilit Modu

Kilit modu, sunucunun genel depolardan sunacağı içeriği sınırlar. Etkinleştirildiğinde, sunucu her öğenin yazarının depoya push erişimi olup olmadığını kontrol eder. Özel depolar etkilenmez ve işbirlikçiler kendi içeriklerine tam erişimi korur.

Kilit modu, güvenilmeyen depo içeriğinden (sorunlar, pull request'ler, yorumlar, commit'ler vb.) prompt enjeksiyonu riskini azaltmayı amaçlayan en iyi çaba içerik filtresidir. Bir yetkilendirme sınırı değildir: altta yatan GitHub kimlik bilgisinin okuyabileceği veya yazabileceği şeyi değiştirmez ve filtrelenmiş bir araç yanıtından gizlenen içerik, aynı kimlik bilgisiyle diğer araçlar veya doğrudan GitHub API erişimi yoluyla hâlâ erişilebilir olabilir.

Kasıtlı bir istisna olarak, küçük bir güvenilir bot hesabı kümesi (şu anda github-actions[bot] ve copilot) tarafından yazılan içerik, push erişiminden bağımsız olarak her zaman güvenli kabul edilir. Bu, kilit modu altında aksi takdirde gizlenecek rutin otomasyon çıktılarının (ör. CI tarafından oluşturulan commit'ler veya yorumlar) filtrelenmesini önler.

./github-mcp-server --lockdown-mode

Docker ile çalıştırırken, ilgili ortam değişkenini ayarlayın:

docker run -i --rm \
  -e GITHUB_PERSONAL_ACCESS_TOKEN=<your-token> \
  -e GITHUB_LOCKDOWN_MODE=1 \
  ghcr.io/github/github-mcp-server

HTTP modunda, bu bayrak (veya GITHUB_LOCKDOWN_MODE) bir üst sınırdır: X-MCP-Lockdown istek başlığı, operatör etkinleştirmediğinde kilit modunu etkinleştirebilir, ancak operatörün zaten etkinleştirdiği kilit modunu devre dışı bırakamaz. Ayrıntılar için Sunucu Yapılandırma Kılavuzu bölümüne bakın.

Kilit modunun davranışı çağrılan araca bağlıdır.

Aşağıdaki araçlar, yazar push erişimine sahip olmadığında bir hata döndürür:

  • issue_read:get
  • pull_request_read:get
  • pull_request_read:get_diff
  • pull_request_read:get_files
  • pull_request_read:get_commits

Aşağıdaki araçlar, push erişimi olmayan kullanıcıların içeriğini filtreler:

  • issue_read:get_comments
  • issue_read:get_sub_issues
  • pull_request_read:get_comments
  • pull_request_read:get_review_comments
  • pull_request_read:get_reviews

i18n / Açıklamaları Geçersiz Kılma

Araçların açıklamaları, ikili dosyayla aynı dizinde bir github-mcp-server-config.json dosyası oluşturularak geçersiz kılınabilir.

Dosya, araç adlarını anahtar ve yeni açıklamaları değer olarak içeren bir JSON nesnesi içermelidir. Örneğin:

{
  "TOOL_ADD_ISSUE_COMMENT_DESCRIPTION": "an alternative description",
  "TOOL_CREATE_BRANCH_DESCRIPTION": "Create a new branch in a GitHub repository"
}

İkili dosyayı --export-translations bayrağıyla çalıştırarak mevcut çevirilerin bir dışa aktarımını oluşturabilirsiniz.

Bu bayrak, yaptığınız çevirileri/geçersiz kılmaları korurken, son dışa aktarımınızdan bu yana ikili dosyaya eklenen yeni çevirileri de ekler.

./github-mcp-server --export-translations
cat github-mcp-server-config.json

Açıklamaları geçersiz kılmak için ENV değişkenlerini de kullanabilirsiniz. Ortam değişkeni adları, JSON dosyasındaki anahtarlarla aynıdır, GITHUB_MCP_ önekiyle ve tümü büyük harfle yazılır.

Örneğin, TOOL_ADD_ISSUE_COMMENT_DESCRIPTION aracını geçersiz kılmak için aşağıdaki ortam değişkenini ayarlayabilirsiniz:

export GITHUB_MCP_TOOL_ADD_ISSUE_COMMENT_DESCRIPTION="an alternative description"

Sunucu Adını ve Başlığını Geçersiz Kılma

Aynı geçersiz kılma mekanizması, başlatma yanıtındaki MCP sunucusunun name ve title alanlarını özelleştirmek için kullanılabilir. Bu, birden fazla GitHub MCP Sunucu örneği çalıştırırken (ör. biri github.com ve biri GitHub Enterprise Server için) ajanların bunları ayırt edebilmesi için yararlıdır.

AnahtarOrtam DeğişkeniVarsayılan
SERVER_NAMEGITHUB_MCP_SERVER_NAMEgithub-mcp-server
SERVER_TITLEGITHUB_MCP_SERVER_TITLEGitHub MCP Server

Örneğin, GitHub Enterprise Server için bir sunucu örneği yapılandırmak için:

{
  "SERVER_NAME": "ghes-mcp-server",
  "SERVER_TITLE": "GHES MCP Server"
}

Veya ortam değişkenlerini kullanarak:

export GITHUB_MCP_SERVER_NAME="ghes-mcp-server"
export GITHUB_MCP_SERVER_TITLE="GHES MCP Server"

Kitaplık Kullanımı

Bu modülün dışa aktarılan Go API'si şu anda kararsız olarak kabul edilmeli ve sonlandırıcı değişikliklere tabi olmalıdır. Gelecekte, istikrar sunabiliriz; bunun değerli olacağı bir kullanım durumu varsa lütfen bir sorun bildirin.

Katkıda Bulunma

Katkılar memnuniyetle karşılanır. Bir pull request açmadan önce, kurulum, test, lint ve dokümantasyon oluşturma talimatları için katkıda bulunma kılavuzunu okuyun.

Destek

GitHub MCP Sunucusunu kullanma konusunda yardım için destek kılavuzuna bakın. Bir hata bulduysanız veya bir özellik talep etmek istiyorsanız, yeni bir tane açmadan önce mevcut sorunları arayın.

Güvenlik

Lütfen güvenlik açıklarını genel sorunlar aracılığıyla bildirmeyin. Güvenlik açıklarını sorumlu bir şekilde bildirmek için güvenlik politikasındaki talimatları izleyin.

Lisans

Bu proje MIT açık kaynak lisansının koşulları altında lisanslanmıştır. Tam koşullar için lütfen MIT bölümüne bakın.