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 — Asistanınızdan depoları incelemesini, dosyaları aramasını ve get_file_contents gibi araçları kullanarak proje yapısını anlamasını isteyin.
  • Sorun ve PR yönetimi — Yapay zekanızın sorunları ve çekme isteklerini oluşturmasını, güncellemesini ve önceliklendirmesini sağlayın; kod değişikliklerini incelemek ve proje panolarını yönetmek dahil.
  • CI/CD izleme — GitHub Actions iş akışı çalıştırmaları hakkında içgörüler edinin, derleme hatalarını analiz edin ve doğal dil sorgularıyla sürümleri yönetin.
  • Kod güvenliği analizi — Güvenlik bulgularını inceleyin, Dependabot uyarılarını gözden geçirin ve kod tabanınızdaki kod desenlerini anlayın.
  • Ekip iş birliği — Tartışmalara erişin, bildirimleri yönetin ve geliştirme süreçlerini kolaylaştırmak için ekip etkinliğini analiz edin.

Dokümantasyon

Go Report Card

GitHub MCP Sunucusu

GitHub MCP Sunucusu, yapay zeka araçlarını doğrudan GitHub platformuna bağlar. Bu, yapay zeka ajanlarına, asistanlarına ve sohbet robotlarına depoları ve kod dosyalarını okuma, sorunları ve PR'ları yönetme, kodu analiz etme ve iş akışlarını otomatikleştirme yeteneği kazandırır. Tümü doğal dil etkileşimleri aracılığıyla.

Kullanım Alanları

  • Depo Yönetimi: Erişiminiz olan herhangi bir depoda kodu gezinin ve sorgulayın, dosyaları arayın, commit'leri analiz edin ve proje yapısını anlayın.
  • Sorun ve PR Otomasyonu: Sorunları ve çekme isteklerini 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 edinin.
  • 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.


Uzaktan GitHub MCP Sunucusu

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

Uzaktan GitHub MCP Sunucusu, GitHub tarafından barındırılır ve başlamanın en kolay yöntemini 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 etkinleştirilmiş olmalıdır

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 (Copilot Chat metin girişinin yanında bulunur) geçin 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 KullanarakGitHub PAT Kullanarak
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 uzaktan 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 KullanarakBaşlık Kullanarak
{
  "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.

GitHub PAT belirteci ile https://octocorp.ghe.com örneği:

{
    ...
    "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. Lütfen 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 olması gerekir.

  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, süresi dolmuş bir belirteciniz 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 sizi OAuth ile giriş yapar (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 giriş 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 Girişi bölümüne bakın.

    Bir belirteç mi tercih edersiniz? Yine de GITHUB_PERSONAL_ACCESS_TOKEN ayarlayarak 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 güvenli tutmak ve farklı MCP ana bilgisayarlarında yeniden kullanılabilir hale getirmek 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ünün 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ını https:// URI şemasıyla önekleyin. 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 (Copilot Chat metin girişinin yanında bulunur) geçin 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 giriş yapı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 giriş çalıştırır ve ortaya çıkan belirteci yalnızca bellekte tutar. Docker'da bu, kapsayıcının giriş geri aramasına erişilebilmesi için geri döngüye sabit bir geri arama bağlantı noktası yayınlanmasını 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 Girişi 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 ayarlayı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ı formatı 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 kurulum kılavuzlarımıza bakın:

Tüm kurulum seçeneklerinin eksiksiz bir özeti için Kurulum Kılavuzları 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 izleyebilir, ancak 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, ikili dosyayı cmd/github-mcp-server dizininde derlemek için go build kullanabilir ve GITHUB_PERSONAL_ACCESS_TOKEN ortam değişkeni belirtecinize ayarlanmış şekilde github-mcp-server stdio komutunu kullanabilirsiniz. Derlemenin çıktı konumunu belirtmek için -o bayrağını kullanın. Sunucunuzu, derlenmiş çalıştırılabilir dosyayı command olarak kullanacak şekilde yapılandırmalısınız. Ö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.

Örnekler 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 Kılavuzu bölümüne bakın.

Araç Setlerini Belirtme

LLM için kullanılabilir olmasını istediğiniz araç setlerini belirtmek için iki şekilde bir izin listesi 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.

Bireysel Araçları Belirtme

Ayrıca --tools bayrağını kullanarak belirli araçları yapılandırabilirsiniz. Araçlar bağımsız olarak kullanılabilir veya ince ayar 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 kullanılabilir 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

Insiders Modu

Yerel GitHub MCP Sunucusu, yeni özelliklere ve deneysel araçlara erken erişim sağlayan bir insiders 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

Kullanılabilir Araç Setleri

Aşağıdaki araç setleri kullanılabilir:

Araç SetiAçıklama
personcontextKesinlikle önerilir: İçinde bulunduğunuz GitHub bağlamı ve geçerli kullanıcı 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_intentsİntent meta verileri (gerekçe, güven, öneri) taşıyan 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
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 Scanning 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 belgeleri arayın

Araçlar

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

    • 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" değerine 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ı (ör. 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ıt 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ı listeleyin

    • 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ı)
    • per_page: 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" değerine 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ı (ör. 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 tetikleyin

    • 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ırmasının 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ı (ör. 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 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ı. Çalıştırmadaki tüm başarısız işlerin günlüklerini almak için failed_only true olduğunda 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 Kod Kalitesi
  • get_code_quality_finding - Kod kalitesi bulgusunu al
    • OAuth Challenge Kapsamları: repo
    • findingNumber: Bulgunun numarası. (sayı, zorunlu)
    • owner: Deponun sahibi. (metin, zorunlu)
    • repo: Deponun adı. (metin, zorunlu)
codescan Kod Güvenliği
  • get_code_scanning_alert - Kod tarama uyarısını al

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

    • OAuth Challenge Kapsamları: security_events
    • owner: Deponun sahibi. (metin, 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ı. (metin, isteğe bağlı)
    • repo: Deponun adı. (metin, zorunlu)
    • severity: Kod tarama uyarılarını önem derecesine göre filtrele (metin, isteğe bağlı)
    • state: Kod tarama uyarılarını duruma göre filtrele. Varsayılan açık (metin, isteğe bağlı)
    • tool_name: Kod tarama için kullanılan aracın adı. (metin, isteğe bağlı)
person Bağlam
  • get_me - Kullanıcı profilimi al

    • Parametre gerekmez
  • get_team_members - Takım üyelerini al

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

    • OAuth Challenge Kapsamları: read:org
    • user: Takımların alınacağı kullanıcı adı. Belirtilmezse, kimliği doğrulanmış kullanıcı kullanılır. (metin, isteğe bağlı)
copilot Copilot
  • assign_copilot_to_issue - Copilot'u soruna 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 (metin, 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 yer almayan ek bağlam, kısıtlama veya yönlendirme sağlamak için kullanın (metin, isteğe bağlı)
    • issue_number: Sorun numarası (sayı, zorunlu)
    • owner: Depo sahibi (metin, zorunlu)
    • repo: Depo adı (metin, zorunlu)
  • request_copilot_review - Copilot incelemesi iste

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (metin, zorunlu)
    • pullNumber: Çekme isteği numarası (sayı, zorunlu)
    • repo: Depo adı (metin, zorunlu)
copilot Copilot Sorun Niyetleri
  • assign_copilot_to_issue_with_intent - Copilot'u niyetle soruna 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 (metin, isteğe bağlı)
    • confidence: Bu seçime ne kadar güvendiğiniz. 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'. (metin, 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 (metin, 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ı (sayı, zorunlu)
    • owner: Depo sahibi (metin, zorunlu)
    • rationale: Sorunun hangi yönünün Copilot'u seçmeye yol açtığını açıklayan tek bir özlü cümle. Somut sinyali belirtin (ör. 'Net kabul kriterleri olan iyi kapsamlandırılmış görev'). (metin, zorunlu)
    • repo: Depo adı (metin, zorunlu)
dependabot Dependabot
  • get_dependabot_alert - Dependabot uyarısını al

    • OAuth Challenge Kapsamları: security_events
    • alertNumber: Uyarının numarası. (sayı, zorunlu)
    • owner: Deponun sahibi. (metin, zorunlu)
    • repo: Deponun adı. (metin, 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. (metin, isteğe bağlı)
    • owner: Deponun sahibi. (metin, zorunlu)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, maks 100) (sayı, isteğe bağlı)
    • repo: Deponun adı. (metin, zorunlu)
    • severity: Dependabot uyarılarını önem derecesine göre filtrele (metin, isteğe bağlı)
    • state: Dependabot uyarılarını duruma göre filtrele. Varsayılan açık (metin, isteğe bağlı)
comment-discussion Tartışmalar
  • 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) (metin, 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ıt verilecek üst düzey yorumdur; GitHub Discussions yalnızca bir düzey iç içe yerleştirmeyi destekler. (metin, isteğe bağlı)
    • discussionNumber: Tartışma numarası ('add' ve 'reply' yöntemleri için zorunlu) (sayı, 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). (metin, zorunlu)
    • owner: Depo sahibi ('add' ve 'reply' yöntemleri için zorunlu) (metin, isteğe bağlı)
    • repo: Depo adı ('add' ve 'reply' yöntemleri için zorunlu) (metin, isteğe bağlı)
  • get_discussion - Tartışmayı al

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

    • OAuth Challenge Kapsamları: repo
    • after: Sayfalama için imleç. Önceki yanıttaki imleci kullanın. (metin, isteğe bağlı)
    • discussionNumber: Tartışma Numarası (sayı, 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. (boolean, isteğe bağlı)
    • owner: Depo sahibi (metin, zorunlu)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, maks 100) (sayı, isteğe bağlı)
    • repo: Depo adı (metin, zorunlu)
  • list_discussion_categories - Tartışma kategorilerini listele

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

    • OAuth Challenge Kapsamları: repo
    • after: Sayfalama için imleç. Önceki yanıttaki imleci kullanın. (metin, isteğe bağlı)
    • category: Tartışma kategorisi kimliğine göre isteğe bağlı filtre. Belirtilirse, yalnızca bu kategoriye sahip tartışmalar listelenir. (metin, isteğe bağlı)
    • direction: Sıralama yönü. (metin, isteğe bağlı)
    • orderBy: Tartışmaları alana göre sırala. Belirtilirse, 'direction' da belirtilmelidir. (metin, isteğe bağlı)
    • owner: Depo sahibi (metin, zorunlu)
    • perPage: Sayfalama için sayfa başına sonuç (min 1, maks 100) (sayı, isteğe bağlı)
    • repo: Depo adı. Belirtilmezse, tartışmalar kuruluş düzeyinde sorgulanır. (metin, 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 (metin, zorunlu)
    • description: Gist'in açıklaması (metin, isteğe bağlı)
    • filename: Basit tek dosyalı gist oluşturma için dosya adı (metin, 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 (metin, zorunlu)
  • list_gists - Gist'leri Listele

    • 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ı)
    • since: Yalnızca bu zamandan sonra güncellenen gist'ler (ISO 8601 zaman damgası) (metin, isteğe bağlı)
    • username: GitHub kullanıcı adı (kimliği doğrulanmış kullanıcının gist'leri için atlayın) (metin, isteğe bağlı)
  • update_gist - Gist Güncelle

    • OAuth Challenge Kapsamları: gist
    • content: Dosya için içerik (metin, zorunlu)
    • description: Gist'in güncellenmiş açıklaması (metin, isteğe bağlı)
    • filename: Güncellenecek veya oluşturulacak dosya adı (metin, zorunlu)
    • gist_id: Güncellenecek gist'in kimliği (metin, zorunlu)
git-branch Git - **get_repository_tree** - Depo ağacını al - **OAuth Challenge Kapsamları**: `repo` - `owner`: Depo sahibi (kullanıcı adı veya organizasyon) (string, zorunlu) - `path_filter`: Ağaç sonuçlarını filtrelemek için isteğe bağlı yol öneki (ör. 'src/' yalnızca src dizinindeki dosyaları göstermek için) (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'dur (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ını kullanı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. Reaksiyon sağlanmadıysa zorunludur. (string, isteğe bağlı)
    • comment_id: Reaksiyon verilecek sorun veya çekme isteği yorumunun sayısal kimliği. Yorumlara reaksiyon vermek için kullanın; sorunun veya çekme isteğinin kendisine reaksiyon vermek için atlayın. body ile birleştirilemez. (integer, isteğe bağlı)
    • issue_number: Yorum yapılacak veya reaksiyon verilecek sorun veya çekme isteği numarası. (number, zorunlu)
    • owner: Depo sahibi (string, zorunlu)
    • reaction: Eklenecek emoji reaksiyonu. body sağlanmadıysa zorunludur. (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:
      1. get - Sorun ayrıntılarını al. Ayrıca en iyi çaba hiyerarşi bayraklarını da 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 ve en fazla 5 references özetler.
      2. get_comments - Sorun yorumlarını al.
      3. get_sub_issues - Sorunun alt sorunlarını (çocuklarını) al.
      4. get_parent - Bu sorun başka bir sorunun alt sorunuysa üst sorunu al.
      5. get_labels - Soruna atanmış 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, maks 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
    • 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 zorunludur. (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:
      • '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 method '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 method '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 method '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 sahip organizasyonu 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, doğrudan organizasyon düzeyindeki alanları döndürür. (string, isteğe bağlı)
  • list_issue_types - Mevcut 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, doğrudan organizasyon düzeyindeki sorun türlerini 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 giriş bir field_name ve bir value alır; sunucu alanı arar ve değeri türüne dönüştürür (tek seçim seçenek adı, metin, sayı veya YYYY-AA-GG 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, maks 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 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 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, maks 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 sağlanırsa, yalnızca bu depo için sorunlar listelenir. (string, isteğe bağlı)
    • sort: Kategori 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:
      • 'add' - bir GitHub deposunda üst soruna alt sorun ekler.
      • 'remove' - bir GitHub deposunda üst sorundan alt sorunu kaldırır.
      • 'reprioritize' - bir GitHub deposunda üst sorun içindeki alt sorunların sırasını değiştirir. 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 üst alan yoktur. (string, zorunlu)
    • owner: Depo sahibi (string, zorunlu)
    • replace_parent: true olduğunda, alt sorunun geçerli ü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)
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
    • owner: Depo sahibi (kullanıcı adı veya organizasyon adı) - tüm işlemler için zorunlu (string, zorunlu)
    • 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 (okundu/yapıldı) (string, zorunlu) - `threadID`: Bildirim konusunun 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 verilen zamandan önce güncellenen bildirimleri göster (ISO 8601 biçimi) (string, isteğe bağlı)
    • filter: Bildirimleri filtrele, belirtilmediyse varsayılanı kullan. Okunmuş bildirimler, kullanıcı tarafından zaten onaylanmış 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 verilirse, 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 verilirse, yalnızca bu depo için bildirimler listelenir. (string, isteğe bağlı)
    • since: Yalnızca verilen 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 konusunun 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 verilirse, 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 verilirse, 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 gereklidir. (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ı biliyorsanız '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 gereklidir. (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ü (kullanıcı 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 gereklidir. (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 gereklidir. (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 öğeleri listelenirken dahil edilecek 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 özeldir — yalnızca birini sağlayın, ikisini değil. Yalnızca 'list_project_items' yöntemi için kullanılır. (string[], isteğe bağlı)
    • fields: Proje öğeleri listelenirken dahil edilecek 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 özeldir — yalnızca birini sağlayın, ikisini 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 organizasyon girişi). 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ı)
    • per_page: Sayfa başına sonuç (max 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 gereklidir. (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 kullanarak 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 gereklidir. (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 gereklidir. Ayrıca, öğeyi sorun numarasına göre çözmek 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 gereklidir. 'update_project_item' için, item_id veya (item_owner + item_repo + issue_number) sağlayarak öğeyi soruna göre çözün. (number, isteğe bağlı)
    • item_owner: Sorunu veya çekme isteğini içeren deponun sahibi (kullanıcı veya organizasyon). 'add_project_item' yöntemi için gereklidir. 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 gereklidir. 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 gereklidir. (string, isteğe bağlı)
    • items: Üst düzey 'updated_field' ile güncellenecek öğeler. 'update_project_items' için gereklidir; 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 gereklidir. (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 bunu ayarlayın. Aksi takdirde atlayın: GitHub, 'start_date' tarihinden başlayarak '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 gereklidir. (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 gereklidir. (string, isteğe bağlı)
    • owner: Proje sahibi (kullanıcı veya organizasyon girişi). 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 gereklidir. 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 gereklidir. (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 gereklidir. (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 gereklidir; 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 özeldir. 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 özeldir. Roadmap yalnızca [] kabul eder. (string[], isteğe bağlı)
git-pull-request Pull Requests
  • add_comment_to_pending_review - İstek sahibinin en son bekleyen pull request incelemesine inceleme yorumu ekler

    • OAuth Challenge Kapsamları: repo
    • body: İnceleme yorumunun metni (string, zorunlu)
    • line: Yorumun uygulandığı pull request diff'indeki 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: Pull request numarası (number, zorunlu)
    • repo: Depo adı (string, zorunlu)
    • side: Yorum yapılacak diff tarafı. LEFT önceki durumu, RIGHT yeni durumu belirtir (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ığı diff'in başlangıç tarafı. LEFT önceki durumu, RIGHT yeni durumu belirtir (string, isteğe bağlı)
    • subjectType: Yorumun hedeflendiği seviye (string, zorunlu)
  • add_reply_to_pull_request_comment - Pull request yorumuna yanıt ekler

    • OAuth Challenge Kapsamları: repo
    • body: Yanıtın metni. Reaksiyon sağlanmadıysa zorunludur. (string, isteğe bağlı)
    • commentId: Yanıt veya reaksiyon verilecek pull request inceleme yorumunun sayısal kimliği. Bir #discussion_r... çapasındaki numarayı kullanın, GraphQL iş parçacığı düğüm kimliğini (PRRT_...) değil. (number, zorunlu)
    • owner: Depo sahibi (string, zorunlu)
    • pullNumber: Pull request numarası. Gövde sağlandığında zorunludur. (number, isteğe bağlı)
    • reaction: Eklenecek emoji reaksiyonu. Gövde sağlanmadıysa zorunludur. (string, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
  • create_pull_request - Yeni pull request açar

    • OAuth Challenge Kapsamları: repo
    • 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-slangı takım inceleyicileri (string[], isteğe bağlı)
    • title: PR başlığı (string, zorunlu)
  • list_pull_requests - Pull request'leri listeler

    • 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 pull request 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 sonuç başına en büyük veriyi düşürür. (string[], isteğe bağlı)
    • head: Baş kullanıcı/kuruluş ve dala göre filtrele (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)
    • sort: Sıralama ölçütü (string, isteğe bağlı)
    • state: Duruma göre filtrele (string, isteğe bağlı)
  • merge_pull_request - Pull request'i birleştirir

    • 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ı)
    • merge_method: Birleştirme yöntemi (string, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • pullNumber: Pull request 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'ı iletin. (string, 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 baş 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 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 kullanın.
      6. get_review_comments - Bir pull request'teki inceleme iş parçacıklarını alır. Her iş parçacığı, pull request incelemeleri sırasında aynı kod konumunda yapılan mantıksal olarak gruplandırılmış inceleme yorumlarını içerir. Meta verileri (isResolved, isOutdated, isCollapsed) ve ilişkili yorumlarıyla iş parçacıklarını döndürü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 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 kullanın.
      9. get_check_runs - Bir pull request'in baş commit'i için kontrol çalıştırmalarını alır. Kontrol çalıştırmaları, PR'de çalışan bireysel CI/CD işleri ve kontrolleridir. (string, zorunlu)
    • 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ı)
    • pullNumber: Pull request numarası (number, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • pull_request_review_write - Pull request incelemelerinde yazma işlemleri (oluştur, gönder, sil)

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

    • 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 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 sağlanırsa yalnızca bu depo için pull request'ler 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: GitHub pull request arama sözdizimini kullanan arama sorgusu (string, zorunlu)
    • repo: İsteğe bağlı depo adı. sahip ile sağlanırsa yalnızca bu depo için pull request'ler listelenir. (string, isteğe bağlı)
    • sort: Kategori eşleşme sayısına göre sıralama alanı, varsayılan en iyi eşleşmedir (string, isteğe bağlı)
  • update_pull_request - Pull request'i düzenler

    • OAuth Challenge Kapsamları: repo
    • base: Yeni temel dal adı (string, isteğe bağlı)
    • body: Yeni açıklama (string, 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 (string, zorunlu)
    • pullNumber: Güncellenecek pull request numarası (number, zorunlu)
    • repo: Depo adı (string, zorunlu)
    • reviewers: İnceleme istenecek GitHub kullanıcı adları veya ORG/ekip-slangı takım inceleyicileri (string[], isteğe bağlı)
    • state: Yeni durum (string, isteğe bağlı)
    • title: Yeni başlık (string, isteğe bağlı)
  • update_pull_request_branch - Pull request dalını günceller

    • OAuth Challenge Kapsamları: repo
    • expectedHeadSha: Pull request'in HEAD referansının beklenen SHA'sı (string, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • pullNumber: Pull request numarası (number, zorunlu)
    • repo: Depo adı (string, zorunlu)
repo Repositories
  • create_branch - Dal oluşturur

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

    • OAuth Challenge Kapsamları: repo, workflow
    • allow_symlink_write: Sembolik bağı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 (string, zorunlu)
    • content: Dosyanın içeriği, yazıldığında görünmesi gerektiği gibi. Base64 kodlamayın; bu sunucu REST API'yi çağırmadan önce bunu yapar. (string, zorunlu)
    • message: Commit mesajı (string, zorunlu)
    • owner: Depo sahibi (kullanıcı adı veya kuruluş) (string, zorunlu)
    • path: Dosyanın oluşturulacağı/güncelleneceği yol (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
    • sha: Değiştirilen dosyanın blob SHA'sı. Dosya zaten mevcutsa zorunludur. (string, isteğe bağlı)
  • create_repository - Depo oluşturur

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

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

    • OAuth Challenge Kapsamları: delete_repo, repo
    • owner: Depo sahibi (kullanıcı adı veya organizasyon) (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • fork_repository - Depoyu fork'la

    • OAuth Challenge Kapsamları: repo
    • organization: Fork'lanacak organizasyon (string, isteğe bağlı)
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
  • get_commit - Commit detaylarını al

    • OAuth Challenge Kapsamları: repo
    • detail: Değiştirilen dosyalar için eklenecek detay düzeyi. "none" istatistikleri ve dosyaları tamamen atlar. "stats" (varsayılan) dosya başına meta verileri içerir: dosya adı, durum ve satır sayısı (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. (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)
    • sha: Commit SHA, dal adı veya etiket adı (string, 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 yanıt boyutunu azaltmak için kullanın; yalnızca belirli alanlara ihtiyacınız varsa, örn. yalnızca 'name' ve 'type'. (string[], isteğe bağlı)
    • owner: Depo sahibi (kullanıcı adı veya organizasyon) (string, zorunlu)
    • path: Dosya/dizin yolu (string, isteğe bağlı)
    • ref: refs/tags/{tag}, refs/heads/{branch} veya refs/pull/{pr_number}/head gibi isteğe bağlı git referanslarını kabul eder (string, isteğe bağlı)
    • repo: Depo adı (string, zorunlu)
    • sha: İsteğe bağlı commit SHA kabul eder. Belirtilirse, ref yerine kullanılır (string, isteğe bağlı)
  • get_latest_release - En son sürümü al

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

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
    • tag: Etiket adı (örn., 'v1.0.0') (string, zorunlu)
  • get_tag - Etiket detaylarını al

    • OAuth Challenge Kapsamları: repo
    • owner: Depo sahibi (string, zorunlu)
    • repo: Depo adı (string, zorunlu)
    • tag: Etiket adı (string, zorunlu)
  • list_branches - Dalları 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)
  • 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'lerini listelemek için commit SHA, dal veya etiket adı. Sağlanmazsa, deponun varsayılan dalını kullanır. Bir commit SHA sağlanırsa, o SHA'ya kadar olan commit'leri listeler. (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 durumuna göre filtrele. Şunlardan biri olabilir: 'outside' (dış işbirlikçiler), 'direct' (organizasyon ü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 dalda 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, tam GitHub API depo nesnelerini döndürür. (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ışma bildirimlerini listele

    • OAuth Challenge Kapsamları: security_events
    • affects: Danışma bildirimlerini etkilenen paket 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: Ortak Zayıflık Numaralandırma 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ışma Bildirimi kimliğine göre filtrele (biçim: GHSA-xxxx-xxxx-xxxx). (string, isteğe bağlı)
    • isWithdrawn: Yalnızca geri çekilmiş danışma bildirimlerinin döndürülüp döndürülmeyeceği. (boolean, isteğe bağlı)
    • modified: Yayınlama veya güncelleme tarihine veya tarih aralığına göre filtrele (ISO 8601 tarih veya aralık). (string, isteğe bağlı)
    • published: Yayınlama 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ışma bildirimi 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ş deposu güvenlik danışma bildirimlerini 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ışma bildirimi durumuna göre filtrele. (string, isteğe bağlı)
  • list_repository_security_advisories - Depo güvenlik danışma bildirimlerini 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ışma bildirimi durumuna göre filtrele. (string, isteğe bağlı)
star Stargazers
  • list_starred_repositories - Yıldızlı 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ızlı 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ç (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ıldığı zamana 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ı (örn. '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ı (örn. 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 yine de görünebilir.
    • Kuruluşa ait alanlar için, ince taneli PAT'ler sahip olan kuruluşa yüklenmeli ve organization_copilot_spaces: read içermelidir.
    • Kuruluşa ait bir alan depo destekli kaynaklar içeriyorsa, belirteç ayrıca başvurulan her depoya erişime sahip olmalıdır, aksi takdirde alan bulunamadı olarak değerlendirilebilir.
  • get_copilot_space - Copilot Alanını Al

    • owner: Alanın sahibi. (string, zorunlu)
    • name: Alanın adı. (string, zorunlu)
  • list_copilot_spaces - Copilot Alanlarını Listele

GitHub Destek Dokümanları Arama
  • github_support_docs_search - GitHub ürün ve destek sorularını yanıtlamak için ilgili dokümantasyonu alın. Destek konuları şunları içerir: GitHub Actions İş Akışları, 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 ve 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şimine sahip 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.) kaynaklanan prompt enjeksiyonu riskini azaltmayı amaçlayan en iyi çaba içerik filtresidir. Bir yetkilendirme sınırı değildir: altta yatan GitHub kimlik bilgisinin okuyup yazabileceklerini 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 modunda aksi takdirde gizlenecek rutin otomasyon çıktılarının (örn. 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şimine sahip 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 ve 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 Sunucusu örneği çalıştırırken (örn. biri github.com ve biri GitHub Enterprise Server için) aracıların bunları ayırt edebilmesi için kullanışlı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ı koşulları altında lisanslanmıştır. Tam koşullar için MIT bölümüne bakın.