Serveur MCP officiel de GitHub pour la recherche de dépôts, les issues, les pull requests, le contexte de code et les workflows GitHub dans les clients IA compatibles MCP.
Exploration de dépôt — Demandez à votre assistant de parcourir des dépôts, de rechercher des fichiers et de comprendre la structure du projet à l’aide d’outils comme get_file_contents.
Gestion des issues et des PR — Faites créer, mettre à jour et trier par votre IA les issues et les demandes de tirage, y compris la révision des modifications de code et la gestion des tableaux de projet.
Surveillance CI/CD — Obtenez des informations sur les exécutions de workflows GitHub Actions, analysez les échecs de build et gérez les versions via des requêtes en langage naturel.
Analyse de la sécurité du code — Examinez les résultats de sécurité, passez en revue les alertes Dependabot et comprenez les modèles de code dans l’ensemble de votre base de code.
Collaboration d’équipe — Accédez aux discussions, gérez les notifications et analysez l’activité de l’équipe pour rationaliser les processus de développement.
Documentation
Serveur GitHub MCP
Le serveur GitHub MCP connecte les outils d'IA directement à la plateforme GitHub. Cela donne aux agents IA, assistants et chatbots la capacité de lire des dépôts et des fichiers de code, de gérer les issues et les PR, d'analyser le code et d'automatiser les flux de travail. Le tout via des interactions en langage naturel.
Cas d'utilisation
Gestion de dépôts : Parcourir et interroger le code, rechercher des fichiers, analyser les commits et comprendre la structure du projet sur n'importe quel dépôt auquel vous avez accès.
Automatisation des issues et des PR : Créer, mettre à jour et gérer les issues et les pull requests. Laissez l'IA aider à trier les bogues, examiner les modifications de code et maintenir les tableaux de projet.
Intelligence CI/CD et flux de travail : Surveiller les exécutions de flux de travail GitHub Actions, analyser les échecs de build, gérer les versions et obtenir des informations sur votre pipeline de développement.
Analyse de code : Examiner les résultats de sécurité, consulter les alertes Dependabot, comprendre les modèles de code et obtenir des informations complètes sur votre base de code.
Collaboration d'équipe : Accéder aux discussions, gérer les notifications, analyser l'activité de l'équipe et rationaliser les processus pour votre équipe.
Conçu pour les développeurs qui souhaitent connecter leurs outils d'IA au contexte et aux capacités de GitHub, des requêtes simples en langage naturel aux flux de travail d'agents complexes en plusieurs étapes.
Serveur GitHub MCP distant
Le serveur GitHub MCP distant est hébergé par GitHub et offre la méthode la plus simple pour démarrer. Si votre hôte MCP ne prend pas en charge les serveurs MCP distants, pas de souci ! Vous pouvez utiliser la version locale du serveur GitHub MCP à la place.
Prérequis
Un hôte MCP compatible avec la prise en charge des serveurs distants (VS Code 1.101+, Claude Desktop, Cursor, Windsurf, etc.)
Pour une installation rapide, utilisez l'un des boutons d'installation en un clic ci-dessus. Une fois ce flux terminé, activez le mode Agent (situé à côté de la zone de saisie de Copilot Chat) et le serveur démarrera. Assurez-vous d'utiliser VS Code 1.101 ou une version ultérieure pour la prise en charge de MCP distant et d'OAuth.
Sinon, pour configurer manuellement VS Code, choisissez le bloc JSON approprié parmi les exemples ci-dessous et ajoutez-le à votre configuration hôte :
Rovo Dev CLI - Guide d'installation pour Rovo Dev CLI
Remarque : Chaque application hôte MCP doit configurer une application GitHub ou une application OAuth pour prendre en charge l'accès distant via OAuth. Toute application hôte prenant en charge les serveurs MCP distants devrait prendre en charge le serveur GitHub distant avec l'authentification PAT. Les détails de configuration et les niveaux de prise en charge varient selon l'hôte. Assurez-vous de consulter la documentation de l'application hôte pour plus d'informations.
Configuration
Configuration des ensembles d'outils
Consultez la Documentation du serveur distant pour tous les détails sur la configuration du serveur distant, les ensembles d'outils, les en-têtes et l'utilisation avancée. Ce fichier fournit des instructions complètes et des exemples pour connecter, personnaliser et installer le serveur GitHub MCP distant dans VS Code et d'autres hôtes MCP.
Essayez les nouvelles fonctionnalités en avant-première ! Le serveur distant propose une version insiders avec un accès anticipé aux nouvelles fonctionnalités et aux outils expérimentaux.
Remarque : Lorsque vous utilisez OAuth avec GitHub Enterprise avec VS Code et GitHub Copilot, vous devez également configurer vos paramètres VS Code pour pointer vers votre instance GitHub Enterprise - voir Authentification depuis VS Code
Pour exécuter le serveur dans un conteneur, vous devez avoir Docker installé.
Une fois Docker installé, vous devez également vous assurer que Docker est en cours d'exécution. L'image Docker est disponible à ghcr.io/github/github-mcp-server. L'image est publique ; si vous obtenez des erreurs lors du pull, vous avez peut-être un jeton expiré et devez docker logout ghcr.io.
Authentification. Sur github.com, vous n'avez rien à créer au préalable — les boutons en un clic ci-dessus vous connectent avec OAuth lors de la première utilisation (un flux basé sur le navigateur ; le jeton est conservé uniquement en mémoire). Les boutons Docker publient un port de rappel fixe (127.0.0.1:8085) afin que le rappel de connexion du conteneur soit accessible. Consultez Connexion OAuth du serveur local pour savoir comment cela fonctionne, la solution de repli sans tête/code d'appareil, et l'apport de votre propre OAuth ou application GitHub (requis pour GitHub Enterprise Server et ghe.com).
Vous préférez un jeton ? Vous pouvez toujours vous authentifier avec un jeton d'accès personnel GitHub en définissant GITHUB_PERSONAL_ACCESS_TOKEN à la place (il a priorité sur OAuth). Le serveur MCP peut utiliser de nombreuses API GitHub, alors activez les autorisations que vous vous sentez à l'aise d'accorder à vos outils d'IA (pour en savoir plus sur les jetons d'accès, consultez la documentation).
Gestion sécurisée des PAT
Variables d'environnement (recommandé)
Pour garder votre PAT GitHub sécurisé et réutilisable sur différents hôtes MCP :
Stockez votre PAT dans des variables d'environnement
export GITHUB_PAT=your_token_here
Ou créez un fichier .env :
GITHUB_PAT=your_token_here
Protégez votre fichier .env
# Add to .gitignore to prevent accidental commits
echo ".env" >> .gitignore
Référencez le jeton dans les configurations
# 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"
}
Remarque : La prise en charge des variables d'environnement varie selon l'application hôte et l'IDE. Certaines applications (comme Windsurf) nécessitent des jetons codés en dur dans les fichiers de configuration.
Bonnes pratiques de sécurité des jetons
Portées minimales : N'accorder que les autorisations nécessaires
repo - Opérations sur les dépôts
read:packages - Accès aux images Docker
read:org - Accès aux équipes d'organisation
Jetons séparés : Utilisez différents PAT pour différents projets/environnements
Rotation régulière : Mettez à jour les jetons périodiquement
Ne jamais commiter : Gardez les jetons hors du contrôle de version
Permissions de fichiers : Restreignez l'accès aux fichiers de configuration contenant des jetons
chmod 600 ~/.your-app/config.json
GitHub Enterprise Server et Enterprise Cloud avec résidence des données (ghe.com)
Le drapeau --gh-host et la variable d'environnement GITHUB_HOST peuvent être utilisés pour définir
le nom d'hôte pour GitHub Enterprise Server ou GitHub Enterprise Cloud avec résidence des données.
Pour GitHub Enterprise Server, préfixez le nom d'hôte avec le schéma d'URI https://. HTTPS est requis et appliqué : les hôtes non-HTTPS sont refusés afin que les informations d'identification ne soient jamais envoyées en clair (la seule exception est un hôte de bouclage tel que http://localhost pour le développement local).
Pour GitHub Enterprise Cloud avec résidence des données, utilisez https://YOURSUBDOMAIN.ghe.com comme nom d'hôte.
Pour une installation rapide, utilisez l'un des boutons d'installation en un clic ci-dessus. Une fois ce flux terminé, activez le mode Agent (situé à côté de la zone de saisie de Copilot Chat) et le serveur démarrera.
Installation dans GitHub Copilot sur d'autres IDE (JetBrains, Visual Studio, Eclipse, etc.)
Ajoutez l'un des blocs JSON suivants aux paramètres MCP de votre IDE.
Connectez-vous avec OAuth (aucun jeton à créer ou à stocker). Sur github.com, l'image officielle inclut déjà les informations d'identification de l'application, vous n'en fournissez donc aucune vous-même : elle exécute une connexion basée sur le navigateur lors de la première utilisation et conserve le jeton résultant uniquement en mémoire. Dans Docker, cela nécessite un port de rappel fixe publié sur la boucle locale afin que le rappel de connexion du conteneur soit accessible :
Consultez Connexion OAuth du serveur local pour le flux binaire natif (aucun port fixe nécessaire), la solution de repli sans tête/code d'appareil, GitHub Enterprise Server / ghe.com, et l'apport de votre propre OAuth ou application GitHub.
En option, vous pouvez ajouter un exemple similaire (c'est-à-dire sans la clé mcp) à un fichier nommé .vscode/mcp.json dans votre espace de travail. Cela vous permettra de partager la configuration avec d'autres applications hôtes qui acceptent le même format.
Remarque : Toute application hôte prenant en charge les serveurs MCP locaux devrait pouvoir accéder au serveur GitHub MCP local. Cependant, le processus de configuration spécifique, la syntaxe et la stabilité de l'intégration varieront selon l'application hôte. Bien que beaucoup puissent suivre un format similaire aux exemples ci-dessus, cela n'est pas garanti. Veuillez vous référer à la documentation de votre application hôte pour connaître la syntaxe de configuration MCP et le processus de configuration corrects.
Compiler à partir des sources
Si vous n'avez pas Docker, vous pouvez utiliser go build pour compiler le binaire dans le
répertoire cmd/github-mcp-server, et utiliser la commande github-mcp-server stdio avec la variable d'environnement GITHUB_PERSONAL_ACCESS_TOKEN définie sur votre jeton. Pour spécifier l'emplacement de sortie de la compilation, utilisez l'option -o. Vous devez configurer votre serveur pour utiliser l'exécutable compilé comme command. Par exemple :
Le serveur GitHub MCP prend en charge l'activation ou la désactivation de groupes spécifiques de fonctionnalités via l'option --toolsets. Cela vous permet de contrôler quelles capacités de l'API GitHub sont disponibles pour vos outils IA. Activer uniquement les ensembles d'outils dont vous avez besoin peut aider le LLM dans le choix des outils et réduire la taille du contexte.
Les ensembles d'outils ne se limitent pas aux outils. Les ressources MCP et les invites pertinentes sont également incluses lorsque cela est applicable.
Vous cherchez des exemples ? Consultez le Guide de configuration du serveur pour des recettes courantes comme les configurations minimales, le mode lecture seule et la combinaison d'outils avec des ensembles d'outils.
Spécification des ensembles d'outils
Pour spécifier les ensembles d'outils que vous souhaitez rendre disponibles au LLM, vous pouvez passer une liste d'autorisation de deux manières :
La variable d'environnement GITHUB_TOOLSETS a priorité sur l'argument de ligne de commande si les deux sont fournis.
Spécification d'outils individuels
Vous pouvez également configurer des outils spécifiques à l'aide de l'option --tools. Les outils peuvent être utilisés indépendamment ou combinés avec des ensembles d'outils pour un contrôle précis.
Cela enregistre tous les outils des ensembles d'outils repos et issues, plus get_gist.
Remarques importantes :
Les outils et les ensembles d'outils peuvent être utilisés ensemble
Le mode lecture seule a priorité : les outils d'écriture sont ignorés si --read-only est défini, même s'ils sont explicitement demandés via --tools
Les noms d'outils doivent correspondre exactement (par exemple, get_file_contents, pas getFileContents). Des noms d'outils invalides entraîneront l'échec du serveur au démarrage avec un message d'erreur
Lorsque les outils sont renommés, les anciens noms sont conservés comme alias pour la compatibilité ascendante. Voir Renommage des outils pour plus de détails.
Utilisation des ensembles d'outils avec Docker
Lorsque vous utilisez Docker, vous pouvez passer les ensembles d'outils comme variables d'environnement :
Lorsque vous utilisez Docker, vous pouvez passer des outils spécifiques comme variables d'environnement. Vous pouvez également combiner des outils avec des ensembles d'outils :
# 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
Ensembles d'outils spéciaux
Ensemble d'outils "all"
L'ensemble d'outils spécial all peut être fourni pour activer tous les ensembles d'outils disponibles, quelle que soit la configuration :
./github-mcp-server --toolsets all
Ou en utilisant la variable d'environnement :
GITHUB_TOOLSETS="all" ./github-mcp-server
Ensemble d'outils "default"
L'ensemble d'outils par défaut default est la configuration qui est transmise au serveur si aucun ensemble d'outils n'est spécifié.
La configuration par défaut est :
context
repos
issues
pull_requests
users
Pour conserver la configuration par défaut et ajouter des ensembles d'outils supplémentaires :
Les ensembles d'outils suivants sont disponibles :
Ensemble d'outils
Description
context
Fortement recommandé : Outils fournissant un contexte sur l'utilisateur actuel et le contexte GitHub dans lequel vous opérez
actions
Workflows GitHub Actions et opérations CI/CD
code_quality
Outils liés à la qualité du code GitHub
code_security
Outils liés à la sécurité du code, tels que l'analyse de code GitHub
copilot
Outils liés à Copilot
copilot_issue_intents
Outils d'attribution de problèmes Copilot en option qui portent des métadonnées d'intention (justification, confiance, suggestion)
dependabot
Outils Dependabot
discussions
Outils liés aux discussions GitHub
gists
Outils liés aux gists GitHub
git
Outils liés à l'API Git GitHub pour les opérations Git de bas niveau
issues
Outils liés aux problèmes GitHub
labels
Outils liés aux étiquettes GitHub
notifications
Outils liés aux notifications GitHub
orgs
Outils liés aux organisations GitHub
projects
Outils liés aux projets GitHub
pull_requests
Outils liés aux demandes de tirage GitHub
repos
Outils liés aux dépôts GitHub
secret_protection
Outils liés à la protection des secrets, tels que l'analyse des secrets GitHub
security_advisories
Outils liés aux avis de sécurité
stargazers
Outils liés aux stargazers GitHub
users
Outils liés aux utilisateurs GitHub
Ensembles d'outils supplémentaires dans le serveur GitHub MCP distant
Ensemble d'outils
Description
copilot
Outils liés à Copilot (par exemple, l'agent de codage Copilot)
copilot_spaces
Outils liés aux espaces Copilot
github_support_docs_search
Rechercher de la documentation pour répondre aux questions sur les produits et le support GitHub
Outils
Actions
actions_get - Obtenir les détails des ressources GitHub Actions (workflows, exécutions de workflows, travaux et artefacts)
Portées du défi OAuth : repo
method : La méthode à exécuter (chaîne, obligatoire)
owner : Propriétaire du dépôt (chaîne, obligatoire)
repo : Nom du dépôt (chaîne, obligatoire)
resource_id : L'identifiant unique de la ressource. Cela variera en fonction de la "méthode" fournie, alors assurez-vous de fournir le bon identifiant :
Fournissez un identifiant de workflow ou un nom de fichier de workflow (par exemple, ci.yaml) pour la méthode 'get_workflow'.
Fournissez un identifiant d'exécution de workflow pour les méthodes 'get_workflow_run', 'get_workflow_run_usage' et 'get_workflow_run_logs_url'.
Fournissez un identifiant d'artefact pour la méthode 'download_workflow_run_artifact'.
Fournissez un identifiant de travail pour la méthode 'get_workflow_job'.
(chaîne, obligatoire)
actions_list - Lister les workflows GitHub Actions dans un dépôt
Portées du défi OAuth : repo
method : L'action à effectuer (chaîne, obligatoire)
owner : Propriétaire du dépôt (chaîne, obligatoire)
page : Numéro de page pour la pagination (défaut : 1) (nombre, facultatif)
per_page : Résultats par page pour la pagination (défaut : 30, max : 100) (nombre, facultatif)
repo : Nom du dépôt (chaîne, obligatoire)
resource_id : L'identifiant unique de la ressource. Cela variera en fonction de la "méthode" fournie, alors assurez-vous de fournir le bon identifiant :
Ne fournissez aucun identifiant de ressource pour la méthode 'list_workflows'.
Fournissez un identifiant de workflow ou un nom de fichier de workflow (par exemple, ci.yaml) pour la méthode 'list_workflow_runs', ou omettez-le pour lister toutes les exécutions de workflows dans le dépôt.
Fournissez un identifiant d'exécution de workflow pour les méthodes 'list_workflow_jobs' et 'list_workflow_run_artifacts'.
(chaîne, facultatif)
workflow_jobs_filter : Filtres pour les travaux de workflow. UNIQUEMENT utilisé lorsque la méthode est 'list_workflow_jobs' (objet, facultatif)
workflow_runs_filter : Filtres pour les exécutions de workflows. UNIQUEMENT utilisé lorsque la méthode est 'list_workflow_runs' (objet, facultatif)
actions_run_trigger - Déclencher des actions de workflow GitHub Actions
Portées du défi OAuth : repo
inputs : Entrées que le workflow accepte. Uniquement utilisé pour la méthode 'run_workflow'. (objet, facultatif)
method : La méthode à exécuter (chaîne, obligatoire)
owner : Propriétaire du dépôt (chaîne, obligatoire)
ref : La référence git pour le workflow. La référence peut être un nom de branche ou de balise. Requis pour la méthode 'run_workflow'. (chaîne, facultatif)
repo : Nom du dépôt (chaîne, obligatoire)
run_id : L'identifiant de l'exécution du workflow. Requis pour toutes les méthodes sauf 'run_workflow'. (nombre, facultatif)
workflow_id : L'identifiant du workflow (numérique) ou le nom du fichier de workflow (par exemple, main.yml, ci.yaml). Requis pour la méthode 'run_workflow'. (chaîne, facultatif)
get_job_logs - Obtenir les journaux des travaux de workflow GitHub Actions
Portées du défi OAuth : repo
failed_only : Lorsque vrai, obtient les journaux de tous les travaux ayant échoué dans l'exécution de workflow spécifiée par run_id. Nécessite que run_id soit fourni. (booléen, facultatif)
job_id : L'identifiant unique du travail de workflow. Requis lors de l'obtention des journaux pour un seul travail. (nombre, facultatif)
owner : Propriétaire du dépôt (chaîne, obligatoire)
repo : Nom du dépôt (chaîne, obligatoire)
return_content : Renvoie le contenu réel du journal au lieu des URL (booléen, facultatif)
run_id : L'identifiant unique de l'exécution du workflow. Requis lorsque failed_only est vrai pour obtenir les journaux de tous les travaux ayant échoué dans l'exécution. (nombre, facultatif)
tail_lines : Nombre de lignes à renvoyer depuis la fin du journal (nombre, facultatif)
Qualité du code
get_code_quality_finding - Obtenir un résultat de qualité de code
Portées du défi OAuth : repo
findingNumber : Le numéro du résultat. (nombre, obligatoire)
owner : Le propriétaire du dépôt. (chaîne, obligatoire)
repo : Le nom du dépôt. (chaîne, obligatoire)
Sécurité du code
get_code_scanning_alert - Obtenir une alerte d'analyse de code
Portées du défi OAuth : security_events
alertNumber : Le numéro de l'alerte. (nombre, obligatoire)
owner : Le propriétaire du dépôt. (chaîne, obligatoire)
repo : Le nom du dépôt. (chaîne, obligatoire)
list_code_scanning_alerts - Lister les alertes d'analyse de code
Portées du défi OAuth : security_events
owner : Le propriétaire du dépôt. (chaîne, obligatoire)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
ref : La référence Git pour les résultats que vous souhaitez lister. (chaîne, facultatif)
repo : Le nom du dépôt. (chaîne, obligatoire)
severity : Filtrer les alertes d'analyse de code par gravité (chaîne, facultatif)
state : Filtrer les alertes d'analyse de code par état. Par défaut, ouvert (chaîne, facultatif)
tool_name : Le nom de l'outil utilisé pour l'analyse de code. (chaîne, facultatif)
Contexte
get_me - Obtenir mon profil utilisateur
Aucun paramètre requis
get_team_members - Obtenir les membres de l'équipe
Portées du défi OAuth : read:org
org : Identifiant de connexion de l'organisation (propriétaire) qui contient l'équipe. (chaîne, obligatoire)
team_slug : Slug de l'équipe (chaîne, obligatoire)
get_teams - Obtenir les équipes
Portées du défi OAuth : read:org
user : Nom d'utilisateur pour lequel obtenir les équipes. S'il n'est pas fourni, utilise l'utilisateur authentifié. (chaîne, facultatif)
Copilot
assign_copilot_to_issue - Assigner Copilot à un problème
Portées du défi OAuth : repo
base_ref : Référence Git (par exemple, branche) à partir de laquelle l'agent commencera son travail. Si elle n'est pas spécifiée, la branche par défaut du dépôt est utilisée (chaîne, facultatif)
custom_instructions : Instructions personnalisées facultatives pour guider l'agent au-delà du corps du problème. Utilisez-les pour fournir un contexte, des contraintes ou des conseils supplémentaires non capturés dans la description du problème (chaîne, facultatif)
issue_number : Numéro du problème (nombre, obligatoire)
owner : Propriétaire du dépôt (chaîne, obligatoire)
repo : Nom du dépôt (chaîne, obligatoire)
request_copilot_review - Demander une revue Copilot
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (chaîne, obligatoire)
pullNumber : Numéro de la demande de tirage (nombre, obligatoire)
repo : Nom du dépôt (chaîne, obligatoire)
Intentions de problèmes Copilot
assign_copilot_to_issue_with_intent - Assigner Copilot à un problème avec intention
Portées du défi OAuth : repo
base_ref : Référence Git (par exemple, branche) à partir de laquelle l'agent commencera son travail. Si elle n'est pas spécifiée, la branche par défaut du dépôt est utilisée. Ignorée lorsque is_suggestion est vrai (chaîne, facultatif)
confidence : Votre niveau de confiance dans ce choix. 'HIGH' pour un signal clair ou une demande explicite de l'utilisateur, 'MEDIUM' pour une inférence raisonnable avec une certaine ambiguïté, 'LOW' pour une estimation avec un signal limité. (chaîne, obligatoire)
custom_instructions : Instructions personnalisées facultatives pour guider l'agent au-delà du corps du problème. Ignorées lorsque is_suggestion est vrai (chaîne, facultatif)
is_suggestion : Si vrai, enregistre une intention d'assignation Copilot en attente plutôt que de lancer l'agent. L'approbation ultérieure fournit le contexte de lancement ; base_ref et custom_instructions sont ignorés dans ce cas. (booléen, obligatoire)
issue_number : Numéro du problème (nombre, obligatoire)
owner : Propriétaire du dépôt (chaîne, obligatoire)
rationale : Une phrase concise expliquant ce qui, dans le problème, a conduit au choix de Copilot. Indiquez le signal concret (par exemple, « Tâche bien définie avec des critères d'acceptation clairs »). (chaîne, obligatoire)
repo : Nom du dépôt (chaîne, obligatoire)
Dependabot
get_dependabot_alert - Obtenir une alerte Dependabot
Portées du défi OAuth : security_events
alertNumber : Le numéro de l'alerte. (nombre, obligatoire)
owner : Le propriétaire du dépôt. (chaîne, obligatoire)
repo : Le nom du dépôt. (chaîne, obligatoire)
list_dependabot_alerts - Lister les alertes Dependabot
Portées du défi OAuth : security_events
after : Curseur pour la pagination. Utilisez le curseur de la réponse précédente. (chaîne, facultatif)
owner : Le propriétaire du dépôt. (chaîne, obligatoire)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Le nom du dépôt. (chaîne, obligatoire)
severity : Filtrer les alertes Dependabot par gravité (chaîne, facultatif)
state : Filtrer les alertes Dependabot par état. Par défaut, ouvert (chaîne, facultatif)
Discussions
discussion_comment_write - Gérer les commentaires de discussion
Portées du défi OAuth : repo
body : Contenu du commentaire (requis pour les méthodes « add », « reply » et « update ») (chaîne, facultatif)
commentNodeID : L'ID de nœud du commentaire de discussion (requis pour les méthodes « reply », « update », « delete », « mark_answer » et « unmark_answer »). Pour « reply », il s'agit du commentaire de premier niveau auquel répondre ; GitHub Discussions ne prend en charge qu'un seul niveau d'imbrication. (chaîne, facultatif)
discussionNumber : Numéro de discussion (requis pour les méthodes « add » et « reply ») (nombre, facultatif)
method : Opération d'écriture à effectuer sur un commentaire de discussion.
Options :
« add » - ajoute un nouveau commentaire de premier niveau à une discussion.
« reply » - répond à un commentaire de discussion de premier niveau (GitHub Discussions ne prend en charge qu'un seul niveau d'imbrication).
« update » - met à jour un commentaire de discussion existant.
« delete » - supprime un commentaire de discussion.
« mark_answer » - marque un commentaire de discussion comme réponse (Q&R uniquement).
« unmark_answer » - démarque un commentaire de discussion comme réponse (Q&R uniquement).
(chaîne, obligatoire)
owner : Propriétaire du dépôt (requis pour les méthodes « add » et « reply ») (chaîne, facultatif)
repo : Nom du dépôt (requis pour les méthodes « add » et « reply ») (chaîne, facultatif)
get_discussion - Obtenir une discussion
Portées du défi OAuth : repo
discussionNumber : Numéro de discussion (nombre, obligatoire)
owner : Propriétaire du dépôt (chaîne, obligatoire)
repo : Nom du dépôt (chaîne, obligatoire)
get_discussion_comments - Obtenir les commentaires de discussion
Portées du défi OAuth : repo
after : Curseur pour la pagination. Utilisez le curseur de la réponse précédente. (chaîne, facultatif)
discussionNumber : Numéro de discussion (nombre, obligatoire)
includeReplies : Lorsque vrai, chaque commentaire de premier niveau inclura ses réponses imbriquées (jusqu'à 100 réponses par commentaire, ce qui est le maximum de l'API GitHub). Par défaut, faux. (booléen, facultatif)
owner : Propriétaire du dépôt (chaîne, obligatoire)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt (chaîne, obligatoire)
list_discussion_categories - Lister les catégories de discussion
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (chaîne, obligatoire)
repo : Nom du dépôt. S'il n'est pas fourni, les catégories de discussion seront interrogées au niveau de l'organisation. (chaîne, facultatif)
list_discussions - Lister les discussions
Portées du défi OAuth : repo
after : Curseur pour la pagination. Utilisez le curseur de la réponse précédente. (chaîne, facultatif)
category : Filtre facultatif par ID de catégorie de discussion. S'il est fourni, seules les discussions de cette catégorie sont listées. (chaîne, facultatif)
direction : Sens de l'ordre. (chaîne, facultatif)
orderBy : Trier les discussions par champ. S'il est fourni, la « direction » doit également être fournie. (chaîne, facultatif)
owner : Propriétaire du dépôt (chaîne, obligatoire)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt. S'il n'est pas fourni, les discussions seront interrogées au niveau de l'organisation. (chaîne, facultatif)
Gists
create_gist - Créer un Gist
Portées du défi OAuth : gist
content : Contenu pour la création simple d'un gist à fichier unique (chaîne, obligatoire)
description : Description du gist (chaîne, facultatif)
filename : Nom de fichier pour la création simple d'un gist à fichier unique (chaîne, obligatoire)
public : Indique si le gist est public (booléen, facultatif)
get_gist - Obtenir le contenu d'un Gist
gist_id : L'ID du gist (chaîne, obligatoire)
list_gists - Lister les Gists
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
since : Uniquement les gists mis à jour après cette heure (horodatage ISO 8601) (chaîne, facultatif)
username : Nom d'utilisateur GitHub (omettre pour les gists de l'utilisateur authentifié) (chaîne, facultatif)
update_gist - Mettre à jour un Gist
Portées du défi OAuth : gist
content : Contenu du fichier (chaîne, obligatoire)
description : Description mise à jour du gist (chaîne, facultatif)
filename : Nom de fichier à mettre à jour ou à créer (chaîne, obligatoire)
gist_id : ID du gist à mettre à jour (chaîne, obligatoire)
Git
- **get_repository_tree** - Obtenir l'arborescence du dépôt
- **Portées du défi OAuth** : `repo`
- `owner` : Propriétaire du dépôt (nom d'utilisateur ou organisation) (chaîne, requis)
- `path_filter` : Préfixe de chemin optionnel pour filtrer les résultats de l'arborescence (par exemple, 'src/' pour n'afficher que les fichiers du répertoire src) (chaîne, optionnel)
- `recursive` : Définir ce paramètre sur true renvoie les objets ou sous-arbres référencés par l'arborescence. La valeur par défaut est false (booléen, optionnel)
- `repo` : Nom du dépôt (chaîne, requis)
- `tree_sha` : La valeur SHA1 ou le nom de la référence (branche ou étiquette) de l'arborescence. Par défaut, la branche par défaut du dépôt (chaîne, optionnel)
Problèmes
add_issue_comment - Ajouter un commentaire à un problème ou à une demande d'extraction
Portées du défi OAuth : repo
body : Contenu du commentaire. Requis sauf si une réaction est fournie. (chaîne, optionnel)
comment_id : L'ID numérique du commentaire de problème ou de demande d'extraction auquel réagir. Utilisez ceci pour les réactions aux commentaires ; omettez-le pour réagir au problème ou à la demande d'extraction lui-même. Ne peut pas être combiné avec body. (entier, optionnel)
issue_number : Numéro du problème ou de la demande d'extraction à commenter ou auquel réagir. (nombre, requis)
owner : Propriétaire du dépôt (chaîne, requis)
reaction : Réaction emoji à ajouter. Requise sauf si body est fourni. (chaîne, optionnel)
repo : Nom du dépôt (chaîne, requis)
get_label - Obtenir une étiquette spécifique d'un dépôt
Portées du défi OAuth : repo
name : Nom de l'étiquette. (chaîne, requis)
owner : Propriétaire du dépôt (nom d'utilisateur ou nom d'organisation) (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
issue_read - Obtenir les détails d'un problème
Portées du défi OAuth : repo
issue_number : Le numéro du problème (nombre, requis)
method : L'opération de lecture à effectuer sur un seul problème.
Les options sont :
get - Obtenir les détails du problème. Renvoie également des indicateurs de hiérarchie au mieux (has_parent, has_children) ; parent et sub_issues_summary sont des résumés de relations optionnels, et closed_by_pull_requests résume les demandes d'extraction configurées pour fermer le problème comme total_count plus jusqu'à 5 references.
get_comments - Obtenir les commentaires du problème.
get_sub_issues - Obtenir les sous-problèmes (enfants) du problème.
get_parent - Obtenir le problème parent, si ce problème est un sous-problème d'un autre.
get_labels - Obtenir les étiquettes assignées au problème.
(chaîne, requis)
owner : Le propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, optionnel)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, optionnel)
repo : Le nom du dépôt (chaîne, requis)
issue_write - Créer ou mettre à jour un problème/demande d'extraction
Portées du défi OAuth : repo
assignees : Noms d'utilisateurs à assigner à ce problème (chaîne[], optionnel)
body : Contenu du corps du problème (chaîne, optionnel)
duplicate_of : Numéro du problème dont celui-ci est un doublon. Requis lorsque state_reason est 'duplicate'. (nombre, optionnel)
issue_fields : Valeurs des champs du problème à définir ou effacer. Chaque élément nécessite 'field_name' et exactement un de 'value', 'field_option_name' ou 'delete: true'. (objet[], optionnel)
issue_number : Numéro du problème à mettre à jour (nombre, optionnel)
labels : Étiquettes à appliquer à ce problème (chaîne[], optionnel)
method : Opération d'écriture à effectuer sur un seul problème.
Les options sont :
'create' - crée un nouveau problème.
'update' - met à jour un problème existant.
(chaîne, requis)
milestone : Numéro de jalon (nombre, optionnel)
owner : Propriétaire du dépôt (chaîne, requis)
parent_issue_number : Numéro du problème parent. Utilisé uniquement lorsque method est 'create' et ne peut pas être combiné avec issue_fields. Le nouveau problème est créé et attaché à ce parent dans la même opération. (nombre, optionnel)
parent_owner : Propriétaire du dépôt du problème parent. Doit être fourni avec parent_repo. Omettez les deux pour utiliser owner et repo. Utilisé uniquement lorsque method est 'create' et que parent_issue_number est fourni. (chaîne, optionnel)
parent_repo : Nom du dépôt du problème parent. Doit être fourni avec parent_owner. Omettez les deux pour utiliser owner et repo. Utilisé uniquement lorsque method est 'create' et que parent_issue_number est fourni. (chaîne, optionnel)
repo : Nom du dépôt (chaîne, requis)
state : Nouvel état (chaîne, optionnel)
state_reason : Raison du changement d'état. Ignoré sauf si l'état est modifié. (chaîne, optionnel)
title : Titre du problème (chaîne, optionnel)
type : Type de ce problème. Pour les mises à jour, passez null pour supprimer le type actuel. Utilisez uniquement si les types de problèmes sont activés pour ce dépôt. Utilisez list_issue_types pour obtenir les valeurs de type valides pour ce dépôt ou son organisation propriétaire. Si le dépôt ne prend pas en charge les types de problèmes, omettez ce paramètre. (chaîne | null, optionnel)
list_issue_fields - Lister les champs de problèmes
Portées du défi OAuth : repo, read:org
owner : Le propriétaire du compte du dépôt ou de l'organisation. Le nom n'est pas sensible à la casse. (chaîne, requis)
repo : Le nom du dépôt. Lorsqu'il est fourni, renvoie les champs pour ce dépôt spécifique (hérités de son organisation). Lorsqu'il est omis, renvoie directement les champs au niveau de l'organisation. (chaîne, optionnel)
list_issue_types - Lister les types de problèmes disponibles
Portées du défi OAuth : repo, read:org
owner : Le propriétaire du compte du dépôt ou de l'organisation. (chaîne, requis)
repo : Le nom du dépôt. Lorsqu'il est fourni, renvoie les types de problèmes pour ce dépôt spécifique. Lorsqu'il est omis, renvoie directement les types de problèmes au niveau de l'organisation. (chaîne, optionnel)
list_issues - Lister les problèmes
Portées du défi OAuth : repo
after : Curseur pour la pagination. Utilisez le curseur de la réponse précédente. (chaîne, optionnel)
direction : Sens du tri. S'il est fourni, 'orderBy' doit également être fourni. (chaîne, optionnel)
field_filters : Filtrer par valeurs de champs de problèmes personnalisés. Chaque entrée prend un field_name et une valeur ; le serveur recherche le champ et convertit la valeur en son type (nom d'option à sélection unique, texte, nombre ou date AAAA-MM-JJ). (objet[], optionnel)
fields : Sous-ensemble de champs à renvoyer pour chaque problème. S'il est omis, tous les champs sont renvoyés. Utilisez ceci pour réduire la taille de la réponse lorsque vous n'avez besoin que de champs spécifiques ; l'omission de 'body' et 'field_values' en particulier supprime les données par résultat les plus volumineuses. (chaîne[], optionnel)
labels : Filtrer par étiquettes (chaîne[], optionnel)
orderBy : Trier les problèmes par champ. S'il est fourni, 'direction' doit également être fourni. (chaîne, optionnel)
owner : Propriétaire du dépôt (chaîne, requis)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, optionnel)
repo : Nom du dépôt (chaîne, requis)
since : Filtrer par date (horodatage ISO 8601) (chaîne, optionnel)
state : Filtrer par état ; par défaut, les problèmes ouverts et fermés sont renvoyés lorsqu'il n'est pas fourni (chaîne, optionnel)
search_issues - Rechercher des problèmes
Portées du défi OAuth : repo
fields : Sous-ensemble de champs à renvoyer pour chaque résultat de problème. S'il est omis, tous les champs sont renvoyés. Utilisez ceci pour réduire la taille de la réponse lorsque vous n'avez besoin que de champs spécifiques ; l'omission de 'body', 'reactions' et 'labels' en particulier supprime les données par résultat les plus volumineuses. (chaîne[], optionnel)
order : Ordre de tri (chaîne, optionnel)
owner : Propriétaire du dépôt optionnel. S'il est fourni avec repo, seuls les problèmes de ce dépôt sont listés. (chaîne, optionnel)
page : Numéro de page pour la pagination (min 1) (nombre, optionnel)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, optionnel)
query : La requête de recherche, en langage naturel. Lorsque l'utilisateur donne des formulations alternatives, incluez-les comme mots simples plutôt que de les joindre avec OR. (chaîne, requis)
repo : Nom du dépôt optionnel. S'il est fourni avec owner, seuls les problèmes de ce dépôt sont listés. (chaîne, optionnel)
sort : Champ de tri par nombre de correspondances de catégories, par défaut la meilleure correspondance (chaîne, optionnel)
sub_issue_write - Modifier un sous-problème
Portées du défi OAuth : repo
after_id : L'ID du sous-problème à prioriser après (soit after_id OU before_id doit être spécifié) (nombre, optionnel)
before_id : L'ID du sous-problème à prioriser avant (soit after_id OU before_id doit être spécifié) (nombre, optionnel)
issue_number : Le numéro du problème parent (nombre, requis)
method : L'action à effectuer sur un seul sous-problème
Les options sont :
'add' - ajouter un sous-problème à un problème parent dans un dépôt GitHub.
'remove' - retirer un sous-problème d'un problème parent dans un dépôt GitHub.
'reprioritize' - modifier l'ordre des sous-problèmes dans un problème parent dans un dépôt GitHub. Utilisez 'after_id' ou 'before_id' pour spécifier la nouvelle position.
Écrit la hiérarchie des problèmes. Pour déplacer un sous-problème vers un nouveau parent, utilisez add avec replace_parent=true ; il n'y a pas de champ parent inscriptible.
(chaîne, requis)
owner : Propriétaire du dépôt (chaîne, requis)
replace_parent : Lorsqu'il est true, remplace le problème parent actuel du sous-problème. Utilisez avec la méthode 'add' uniquement. (booléen, optionnel)
repo : Nom du dépôt (chaîne, requis)
sub_issue_id : L'ID du sous-problème à ajouter. L'ID n'est pas le même que le numéro du problème (nombre, requis)
Étiquettes
get_label - Obtenir une étiquette spécifique d'un dépôt
Portées du défi OAuth : repo
name : Nom de l'étiquette. (chaîne, requis)
owner : Propriétaire du dépôt (nom d'utilisateur ou nom d'organisation) (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
label_write - Opérations d'écriture sur les étiquettes du dépôt
Portées du défi OAuth : repo
color : Couleur de l'étiquette sous forme de code hexadécimal à 6 caractères sans préfixe '#' (par exemple, 'f29513'). Requis pour 'create', optionnel pour 'update'. (chaîne, optionnel)
description : Texte de description de l'étiquette. Optionnel pour 'create' et 'update'. (chaîne, optionnel)
method : Opération à effectuer : 'create', 'update' ou 'delete' (chaîne, requis)
name : Nom de l'étiquette - requis pour toutes les opérations (chaîne, requis)
new_name : Nouveau nom pour l'étiquette (utilisé uniquement avec la méthode 'update' pour renommer) (chaîne, optionnel)
owner : Propriétaire du dépôt (nom d'utilisateur ou nom d'organisation) (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
list_label - Lister les étiquettes d'un dépôt
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (nom d'utilisateur ou nom d'organisation) - requis pour toutes les opérations (chaîne, requis)
repo : Nom du dépôt - requis pour toutes les opérations (chaîne, requis)
Notifications
- **dismiss_notification** - Fermer la notification
- **Portées du défi OAuth** : `notifications`
- `state` : Le nouvel état de la notification (lu/terminé) (chaîne, obligatoire)
- `threadID` : L'identifiant du fil de discussion de la notification (chaîne, obligatoire)
get_notification_details - Obtenir les détails de la notification
Portées du défi OAuth : notifications
notificationID : L'identifiant de la notification (chaîne, obligatoire)
list_notifications - Lister les notifications
Portées du défi OAuth : notifications
before : Afficher uniquement les notifications mises à jour avant l'heure donnée (format ISO 8601) (chaîne, facultatif)
filter : Filtrer les notifications, utiliser la valeur par défaut sauf indication contraire. Les notifications lues sont celles qui ont déjà été reconnues par l'utilisateur. Les notifications participantes sont celles auxquelles l'utilisateur est directement impliqué, comme les problèmes ou les demandes de tirage qu'il a commentés ou créés. (chaîne, facultatif)
owner : Propriétaire du dépôt facultatif. S'il est fourni avec le dépôt, seules les notifications pour ce dépôt sont listées. (chaîne, facultatif)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt facultatif. S'il est fourni avec le propriétaire, seules les notifications pour ce dépôt sont listées. (chaîne, facultatif)
since : Afficher uniquement les notifications mises à jour après l'heure donnée (format ISO 8601) (chaîne, facultatif)
manage_notification_subscription - Gérer l'abonnement aux notifications
Portées du défi OAuth : notifications
action : Action à effectuer : ignorer, surveiller ou supprimer l'abonnement aux notifications. (chaîne, obligatoire)
notificationID : L'identifiant du fil de discussion de la notification. (chaîne, obligatoire)
manage_repository_notification_subscription - Gérer l'abonnement aux notifications du dépôt
Portées du défi OAuth : notifications
action : Action à effectuer : ignorer, surveiller ou supprimer l'abonnement aux notifications du dépôt. (chaîne, obligatoire)
owner : Le propriétaire du compte du dépôt. (chaîne, obligatoire)
repo : Le nom du dépôt. (chaîne, obligatoire)
mark_all_notifications_read - Marquer toutes les notifications comme lues
Portées du défi OAuth : notifications
lastReadAt : Décrit le dernier point où les notifications ont été vérifiées (facultatif). Par défaut : maintenant (chaîne, facultatif)
owner : Propriétaire du dépôt facultatif. S'il est fourni avec le dépôt, seules les notifications pour ce dépôt sont marquées comme lues. (chaîne, facultatif)
repo : Nom du dépôt facultatif. S'il est fourni avec le propriétaire, seules les notifications pour ce dépôt sont marquées comme lues. (chaîne, facultatif)
Organisations
search_orgs - Rechercher des organisations
Portées du défi OAuth : read:org
order : Ordre de tri (chaîne, facultatif)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
query : Requête de recherche d'organisation. Exemples : 'microsoft', 'location:california', 'created:>=2025-01-01'. La recherche est automatiquement limitée à type:org. (chaîne, obligatoire)
sort : Champ de tri par catégorie (chaîne, facultatif)
Projets
projects_get - Obtenir les détails des ressources GitHub Projects
Portées du défi OAuth : read:project
field_id : L'identifiant du champ. Requis pour la méthode 'get_project_field'. (nombre, facultatif)
field_names : Liste spécifique des noms de champs à inclure dans la réponse lors de l'obtention d'un élément de projet (par exemple ["Status", "Priority"]). Résolu côté serveur en identifiants de champs — passez ceci au lieu de 'fields' lorsque vous ne connaissez que les noms lisibles par l'humain. Mutuellement exclusif avec 'fields' — fournissez-en un, pas les deux. Utilisé uniquement pour la méthode 'get_project_item'. (string[], facultatif)
fields : Liste spécifique des identifiants de champs à inclure dans la réponse lors de l'obtention d'un élément de projet (par exemple ["102589", "985201", "169875"]). Si ni 'fields' ni 'field_names' n'est fourni, seul le champ de titre est inclus. Mutuellement exclusif avec 'field_names' — fournissez-en un, pas les deux. Utilisé uniquement pour la méthode 'get_project_item'. (string[], facultatif)
item_id : L'identifiant de l'élément. Requis pour la méthode 'get_project_item'. (nombre, facultatif)
method : La méthode à exécuter (chaîne, obligatoire)
owner : Le propriétaire (connexion utilisateur ou organisation). Le nom n'est pas sensible à la casse. (chaîne, facultatif)
owner_type : Type de propriétaire (utilisateur ou organisation). S'il n'est pas fourni, il sera automatiquement détecté. (chaîne, facultatif)
project_number : Le numéro du projet. (nombre, facultatif)
status_update_id : L'identifiant de nœud de la mise à jour de statut du projet. Requis pour la méthode 'get_project_status_update'. (chaîne, facultatif)
view_id : L'identifiant de nœud de la vue du projet. Requis pour la méthode 'get_project_view'. (chaîne, facultatif)
projects_list - Lister les ressources GitHub Projects
Portées du défi OAuth : read:project
after : Curseur de pagination avant depuis le pageInfo.nextCursor précédent. (chaîne, facultatif)
before : Curseur de pagination arrière depuis le pageInfo.prevCursor précédent (rare). (chaîne, facultatif)
field_names : Noms de champs à inclure lors de la liste des éléments de projet (par exemple ["Status", "Priority"]). Résolus côté serveur en identifiants de champs — passez ceci au lieu de 'fields' lorsque vous ne connaissez que les noms lisibles par l'humain. Les noms qui ne peuvent pas être résolus renvoient une erreur structurée. Mutuellement exclusif avec 'fields' — fournissez-en un, pas les deux. Utilisé uniquement pour la méthode 'list_project_items'. (string[], facultatif)
fields : Identifiants de champs à inclure lors de la liste des éléments de projet (par exemple ["102589", "985201"]). CRITIQUE : fournissez toujours pour obtenir les valeurs des champs. Sans cela (et sans 'field_names'), seuls les titres sont renvoyés. Mutuellement exclusif avec 'field_names' — fournissez-en un, pas les deux. Utilisé uniquement pour la méthode 'list_project_items'. (string[], facultatif)
method : L'action à effectuer (chaîne, obligatoire)
owner : Le propriétaire (connexion utilisateur ou organisation). Le nom n'est pas sensible à la casse. (chaîne, obligatoire)
owner_type : Type de propriétaire (utilisateur ou organisation). S'il n'est pas fourni, les deux seront automatiquement essayés. (chaîne, facultatif)
per_page : Résultats par page (max 50) (nombre, facultatif)
project_number : Le numéro du projet. Requis pour les méthodes 'list_project_fields', 'list_project_items', 'list_project_views' et 'list_project_status_updates'. (nombre, facultatif)
query : Chaîne de filtre/requête. Pour list_projects : filtrer par texte de titre et état (par exemple "roadmap is:open"). Pour list_project_items : filtrage avancé utilisant la syntaxe de filtrage de projet de GitHub. (chaîne, facultatif)
projects_write - Gérer GitHub Projects
Portées du défi OAuth : project
body : Le corps de la mise à jour de statut (markdown). Utilisé pour la méthode 'create_project_status_update'. (chaîne, facultatif)
field_name : Le nom du champ d'itération (par exemple 'Sprint'). Requis pour la méthode 'create_iteration_field'. (chaîne, facultatif)
filter : Filtre de vue enregistré ; omettez lors de la mise à jour pour le conserver, ou passez null pour l'effacer. (chaîne | null, facultatif)
issue_number : Le numéro du problème. Requis pour 'add_project_item' lorsque item_type est 'issue'. Également accepté par 'update_project_item' pour résoudre l'élément par numéro de problème (combinez avec item_owner et item_repo). (nombre, facultatif)
item_id : L'identifiant de l'élément de projet. Requis pour 'delete_project_item'. Pour 'update_project_item', fournissez soit item_id, soit (item_owner + item_repo + issue_number) pour résoudre l'élément par problème. (nombre, facultatif)
item_owner : Le propriétaire (utilisateur ou organisation) du dépôt contenant le problème ou la demande de tirage. Requis pour la méthode 'add_project_item'. Également accepté par 'update_project_item' lors de la résolution de l'élément par numéro de problème. (chaîne, facultatif)
item_repo : Le nom du dépôt contenant le problème ou la demande de tirage. Requis pour la méthode 'add_project_item'. Également accepté par 'update_project_item' lors de la résolution de l'élément par numéro de problème. (chaîne, facultatif)
item_type : Le type de l'élément, soit issue ou pull_request. Requis pour la méthode 'add_project_item'. (chaîne, facultatif)
items : Les éléments à mettre à jour avec le 'updated_field' de niveau supérieur. Requis pour 'update_project_items' ; préférez-le plutôt que d'appeler 'update_project_item' dans une boucle. Chaque entrée doit correspondre exactement à une variante de référence : 'node_id', 'item_id' numérique, ou 'item_owner' + 'item_repo' + 'issue_number'. Limite : 50 éléments par appel. (object[], facultatif)
iteration_duration : Durée en jours pour les itérations du champ (par exemple 7 pour hebdomadaire, 14 pour bi-hebdomadaire). Requis pour la méthode 'create_iteration_field'. (nombre, facultatif)
iterations : Itérations personnalisées pour la méthode 'create_iteration_field'. Ne définissez ceci que lorsque vous avez besoin d'itérations avec des durées variables, des pauses entre elles, ou des titres spécifiques. Sinon, omettez-le : GitHub crée automatiquement trois itérations de 'iteration_duration' jours commençant à 'start_date', ce qui est le bon choix dans la plupart des cas. (object[], facultatif)
layout : Disposition de la vue ; requise lors de la création d'une vue. (chaîne, facultatif)
method : La méthode à exécuter (chaîne, obligatoire)
name : Nom de la vue ; requis lors de la création d'une vue. (chaîne, facultatif)
owner : Le propriétaire du projet (connexion utilisateur ou organisation). Le nom n'est pas sensible à la casse. (chaîne, obligatoire)
owner_type : Type de propriétaire (utilisateur ou organisation). Requis pour la méthode 'create_project'. S'il n'est pas fourni pour d'autres méthodes, il sera automatiquement détecté. (chaîne, facultatif)
project_number : Le numéro du projet. Requis pour toutes les méthodes sauf 'create_project'. (nombre, facultatif)
pull_request_number : Le numéro de la demande de tirage (utilisez lorsque item_type est 'pull_request' pour la méthode 'add_project_item'). Fournissez soit issue_number ou pull_request_number. (nombre, facultatif)
start_date : Date de début au format AAAA-MM-JJ. Utilisé pour les méthodes 'create_project_status_update' et 'create_iteration_field'. (chaîne, facultatif)
status : Le statut du projet. Utilisé pour la méthode 'create_project_status_update'. (chaîne, facultatif)
target_date : La date cible de la mise à jour de statut au format AAAA-MM-JJ. Utilisé pour la méthode 'create_project_status_update'. (chaîne, facultatif)
title : Le titre du projet. Requis pour la méthode 'create_project'. (chaîne, facultatif)
updated_field : Le champ/valeur à appliquer, en utilisant {"id": 123, "value": ...} ou {"name": "Status", "value": ...} ; null efface le champ. Requis pour 'update_project_item' et 'update_project_items', où un champ/valeur de niveau supérieur s'applique à chaque élément d'un lot. Pour les champs SINGLE_SELECT de 'update_project_item', la forme de nom accepte les noms d'options ; la forme d'identifiant attend un identifiant d'option. (objet, facultatif)
view_id : Identifiant de nœud de vue de projet pour la mise à jour ou la suppression ; doit appartenir à owner/project_number. (chaîne, facultatif)
visible_field_names : Noms de champs de projet ordonnés à afficher lors de la création ou à remplacer lors de la mise à jour ; omettez lors de la mise à jour pour conserver, ou passez [] pour réinitialiser. Mutuellement exclusif avec visible_fields. Roadmap n'accepte que []. (string[], facultatif)
visible_fields : Identifiants de base de données de champs de projet ordonnés à afficher lors de la création ou à remplacer lors de la mise à jour ; omettez lors de la mise à jour pour conserver, ou passez [] pour réinitialiser. Mutuellement exclusif avec visible_field_names. Roadmap n'accepte que []. (string[], facultatif)
Pull Requests
add_comment_to_pending_review - Ajouter un commentaire de revue à la dernière revue de pull request en attente du demandeur
OAuth Challenge Scopes : repo
body : Le texte du commentaire de revue (chaîne, requis)
line : La ligne du blob dans le diff de la pull request à laquelle le commentaire s'applique. Pour les commentaires multi-lignes, la dernière ligne de la plage (nombre, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
path : Le chemin relatif du fichier qui nécessite un commentaire (chaîne, requis)
pullNumber : Numéro de la pull request (nombre, requis)
repo : Nom du dépôt (chaîne, requis)
side : Le côté du diff sur lequel commenter. LEFT indique l'état précédent, RIGHT indique le nouvel état (chaîne, facultatif)
startLine : Pour les commentaires multi-lignes, la première ligne de la plage à laquelle le commentaire s'applique (nombre, facultatif)
startSide : Pour les commentaires multi-lignes, le côté de départ du diff auquel le commentaire s'applique. LEFT indique l'état précédent, RIGHT indique le nouvel état (chaîne, facultatif)
subjectType : Le niveau auquel le commentaire est ciblé (chaîne, requis)
add_reply_to_pull_request_comment - Ajouter une réponse à un commentaire de pull request
OAuth Challenge Scopes : repo
body : Le texte de la réponse. Requis sauf si une réaction est fournie. (chaîne, facultatif)
commentId : L'ID numérique du commentaire de revue de pull request auquel répondre ou réagir. Utilisez le numéro d'une ancre #discussion_r..., pas l'ID de nœud de thread GraphQL (PRRT_...). (nombre, requis)
owner : Propriétaire du dépôt (chaîne, requis)
pullNumber : Numéro de la pull request. Requis lorsque le corps est fourni. (nombre, facultatif)
reaction : Réaction emoji à ajouter. Requise sauf si le corps est fourni. (chaîne, facultatif)
repo : Nom du dépôt (chaîne, requis)
create_pull_request - Ouvrir une nouvelle pull request
OAuth Challenge Scopes : repo
base : Branche dans laquelle fusionner (chaîne, requis)
body : Description de la PR (chaîne, facultatif)
draft : Créer en tant que PR brouillon (booléen, facultatif)
head : Branche contenant les modifications (chaîne, requis)
maintainer_can_modify : Autoriser les modifications par les mainteneurs (booléen, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
reviewers : Noms d'utilisateur GitHub ou réviseurs d'équipe ORG/slug d'équipe pour demander des revues (string[], facultatif)
title : Titre de la PR (chaîne, requis)
list_pull_requests - Lister les pull requests
OAuth Challenge Scopes : repo
base : Filtrer par branche de base (chaîne, facultatif)
direction : Direction du tri (chaîne, facultatif)
fields : Sous-ensemble de champs à retourner pour chaque pull request. Si omis, tous les champs sont retournés. Utilisez ceci pour réduire la taille de la réponse lorsque vous n'avez besoin que de champs spécifiques ; omettre 'body' en particulier réduit les données les plus volumineuses par résultat. (string[], facultatif)
head : Filtrer par utilisateur/org de tête et branche (chaîne, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt (chaîne, requis)
sort : Trier par (chaîne, facultatif)
state : Filtrer par état (chaîne, facultatif)
merge_pull_request - Fusionner une pull request
OAuth Challenge Scopes : repo
commit_message : Détail supplémentaire pour le commit de fusion (chaîne, facultatif)
commit_title : Titre pour le commit de fusion (chaîne, facultatif)
merge_method : Méthode de fusion (chaîne, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
pullNumber : Numéro de la pull request (nombre, requis)
repo : Nom du dépôt (chaîne, requis)
pull_request_read - Obtenir les détails d'une seule pull request
OAuth Challenge Scopes : repo
after : Curseur pour la pagination, utilisé uniquement par la méthode get_review_comments. Passez le endCursor de la PageInfo de la page précédente pour récupérer la page suivante. (chaîne, facultatif)
method : Action pour spécifier quelles données de pull request doivent être récupérées depuis GitHub.
Options possibles :
get - Obtenir les détails d'une pull request spécifique.
get_diff - Obtenir le diff d'une pull request.
get_status - Obtenir le statut de commit combiné d'un commit de tête dans une pull request.
get_files - Obtenir la liste des fichiers modifiés dans une pull request. Utilisez avec les paramètres de pagination pour contrôler le nombre de résultats retournés.
get_commits - Obtenir la liste des commits sur une pull request. Utilisez avec les paramètres de pagination pour contrôler le nombre de résultats retournés.
get_review_comments - Obtenir les fils de discussion de revue sur une pull request. Chaque fil contient des commentaires de revue logiquement groupés faits sur le même emplacement de code lors des revues de pull request. Retourne les fils avec des métadonnées (isResolved, isOutdated, isCollapsed) et leurs commentaires associés. Utilisez la pagination basée sur le curseur (perPage, after) pour contrôler les résultats.
get_reviews - Obtenir les revues sur une pull request. Lorsqu'on demande des commentaires de revue, utilisez la méthode get_review_comments. Utilisez avec les paramètres de pagination pour contrôler le nombre de résultats retournés.
get_comments - Obtenir les commentaires sur une pull request. Utilisez ceci si l'utilisateur ne veut pas spécifiquement des commentaires de revue. Utilisez avec les paramètres de pagination pour contrôler le nombre de résultats retournés.
get_check_runs - Obtenir les exécutions de vérification pour le commit de tête d'une pull request. Les exécutions de vérification sont les travaux et vérifications CI/CD individuels qui s'exécutent sur la PR.
(chaîne, requis)
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
pullNumber : Numéro de la pull request (nombre, requis)
repo : Nom du dépôt (chaîne, requis)
pull_request_review_write - Opérations d'écriture (créer, soumettre, supprimer) sur les revues de pull request
OAuth Challenge Scopes : repo
body : Texte du commentaire de revue (chaîne, facultatif)
commitID : SHA du commit à revoir (chaîne, facultatif)
event : Action de revue à effectuer. (chaîne, facultatif)
method : L'opération d'écriture à effectuer sur la revue de pull request. (chaîne, requis)
owner : Propriétaire du dépôt (chaîne, requis)
pullNumber : Numéro de la pull request (nombre, requis)
repo : Nom du dépôt (chaîne, requis)
threadId : L'ID de nœud du fil de discussion de revue (par exemple, PRRT_kwDOxxx). Requis pour les méthodes resolve_thread et unresolve_thread. Obtenez les ID de fil depuis pull_request_read avec la méthode get_review_comments. (chaîne, facultatif)
search_pull_requests - Rechercher des pull requests
OAuth Challenge Scopes : repo
fields : Sous-ensemble de champs à retourner pour chaque résultat de pull request. Si omis, tous les champs sont retournés. Utilisez ceci pour réduire la taille de la réponse lorsque vous n'avez besoin que de champs spécifiques ; omettre 'body', 'reactions' et 'labels' en particulier réduit les données les plus volumineuses par résultat. (string[], facultatif)
order : Ordre de tri (chaîne, facultatif)
owner : Propriétaire du dépôt facultatif. S'il est fourni avec repo, seules les pull requests de ce dépôt sont listées. (chaîne, facultatif)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
query : Requête de recherche utilisant la syntaxe de recherche de pull requests GitHub (chaîne, requis)
repo : Nom du dépôt facultatif. S'il est fourni avec owner, seules les pull requests de ce dépôt sont listées. (chaîne, facultatif)
sort : Champ de tri par nombre de correspondances de catégories, par défaut meilleure correspondance (chaîne, facultatif)
update_pull_request - Modifier une pull request
OAuth Challenge Scopes : repo
base : Nouveau nom de branche de base (chaîne, facultatif)
body : Nouvelle description (chaîne, facultatif)
draft : Marquer la pull request comme brouillon (true) ou prête pour la revue (false) (booléen, facultatif)
maintainer_can_modify : Autoriser les modifications par les mainteneurs (booléen, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
pullNumber : Numéro de la pull request à mettre à jour (nombre, requis)
repo : Nom du dépôt (chaîne, requis)
reviewers : Noms d'utilisateur GitHub ou réviseurs d'équipe ORG/slug d'équipe pour demander des revues (string[], facultatif)
state : Nouvel état (chaîne, facultatif)
title : Nouveau titre (chaîne, facultatif)
update_pull_request_branch - Mettre à jour la branche d'une pull request
OAuth Challenge Scopes : repo
expectedHeadSha : Le SHA attendu de la référence HEAD de la pull request (chaîne, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
pullNumber : Numéro de la pull request (nombre, requis)
repo : Nom du dépôt (chaîne, requis)
Dépôts
create_branch - Créer une branche
OAuth Challenge Scopes : repo
branch : Nom de la nouvelle branche (chaîne, requis)
from_branch : Branche source (par défaut, la branche par défaut du dépôt) (chaîne, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
create_or_update_file - Créer ou mettre à jour un fichier
OAuth Challenge Scopes : repo, workflow
allow_symlink_write : Définir sur true pour mettre à jour un lien symbolique lui-même ; le contenu doit être son nouveau chemin cible. (booléen, facultatif)
branch : Branche dans laquelle créer/mettre à jour le fichier (chaîne, requis)
content : Contenu du fichier, exactement tel qu'il doit apparaître une fois écrit. Ne l'encodez pas en base64 ; ce serveur le fait avant d'appeler l'API REST. (chaîne, requis)
message : Message de commit (chaîne, requis)
owner : Propriétaire du dépôt (nom d'utilisateur ou organisation) (chaîne, requis)
path : Chemin où créer/mettre à jour le fichier (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
sha : Le SHA du blob du fichier remplacé. Requis si le fichier existe déjà. (chaîne, facultatif)
create_repository - Créer un dépôt
OAuth Challenge Scopes : repo
autoInit : Initialiser avec un README (booléen, facultatif)
description : Description du dépôt (chaîne, facultatif)
name : Nom du dépôt (chaîne, requis)
organization : Organisation dans laquelle créer le dépôt (omettre pour créer dans votre compte personnel) (chaîne, facultatif)
private : Si le dépôt doit être privé. Par défaut true (privé) lorsqu'il est omis. (booléen, facultatif)
delete_file - Supprimer un fichier
OAuth Challenge Scopes : repo, workflow
branch : Branche depuis laquelle supprimer le fichier (chaîne, requis)
message : Message de commit (chaîne, requis)
owner : Propriétaire du dépôt (nom d'utilisateur ou organisation) (chaîne, requis)
path : Chemin du fichier à supprimer (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
delete_repository - Supprimer un dépôt
Portées du défi OAuth : delete_repo, repo
owner : Propriétaire du dépôt (nom d'utilisateur ou organisation) (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
fork_repository - Forker un dépôt
Portées du défi OAuth : repo
organization : Organisation vers laquelle forker (chaîne, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
get_commit - Obtenir les détails d'un commit
Portées du défi OAuth : repo
detail : Niveau de détail à inclure pour les fichiers modifiés. « none » omet les statistiques et les fichiers entièrement. « stats » (par défaut) inclut les métadonnées par fichier : nom de fichier, statut et compteurs de lignes de code (ajouts, suppressions, modifications), sans contenu de patch. « full_patch » inclut en plus le contenu du diff unifié pour chaque fichier et peut être très volumineux. (chaîne, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt (chaîne, requis)
sha : SHA du commit, nom de branche ou nom de tag (chaîne, requis)
get_file_contents - Obtenir le contenu d'un fichier ou d'un répertoire
Portées du défi OAuth : repo
fields : Sous-ensemble de champs à retourner pour chaque entrée lorsque le chemin est un répertoire. S'il est omis, tous les champs sont retournés. Ignoré lorsque le chemin est un fichier unique. Utilisez ceci pour réduire la taille de la réponse lors du listage de répertoires si vous n'avez besoin que de champs spécifiques, par ex. uniquement « name » et « type ». (chaîne[], facultatif)
owner : Propriétaire du dépôt (nom d'utilisateur ou organisation) (chaîne, requis)
path : Chemin vers le fichier/répertoire (chaîne, facultatif)
ref : Accepte des références git facultatives telles que refs/tags/{tag}, refs/heads/{branch} ou refs/pull/{pr_number}/head (chaîne, facultatif)
repo : Nom du dépôt (chaîne, requis)
sha : Accepte un SHA de commit facultatif. S'il est spécifié, il sera utilisé à la place de la référence (chaîne, facultatif)
get_latest_release - Obtenir la dernière version
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
get_release_by_tag - Obtenir une version par nom de tag
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
tag : Nom du tag (par ex., « v1.0.0 ») (chaîne, requis)
get_tag - Obtenir les détails d'un tag
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
tag : Nom du tag (chaîne, requis)
list_branches - Lister les branches
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt (chaîne, requis)
list_commits - Lister les commits
Portées du défi OAuth : repo
author : Nom d'utilisateur ou adresse e-mail de l'auteur pour filtrer les commits (chaîne, facultatif)
fields : Sous-ensemble de champs à retourner pour chaque commit. S'il est omis, tous les champs sont retournés. Utilisez ceci pour réduire la taille de la réponse si vous n'avez besoin que de champs spécifiques, par ex. uniquement « sha » et « html_url ». (chaîne[], facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
path : Seuls les commits contenant ce chemin de fichier seront retournés (chaîne, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt (chaîne, requis)
sha : SHA du commit, nom de branche ou de tag pour lister les commits correspondants. S'il n'est pas fourni, utilise la branche par défaut du dépôt. Si un SHA de commit est fourni, liste les commits jusqu'à ce SHA inclus. (chaîne, facultatif)
since : Seuls les commits après cette date seront retournés (format ISO 8601 : AAAA-MM-JJTHH:MM:SSZ ou AAAA-MM-JJ) (chaîne, facultatif)
until : Seuls les commits avant cette date seront retournés (format ISO 8601 : AAAA-MM-JJTHH:MM:SSZ ou AAAA-MM-JJ) (chaîne, facultatif)
list_releases - Lister les versions
Portées du défi OAuth : repo
fields : Sous-ensemble de champs à retourner pour chaque version. S'il est omis, tous les champs sont retournés. Utilisez ceci pour réduire la taille de la réponse si vous n'avez besoin que de champs spécifiques ; omettre « body » en particulier supprime les données les plus volumineuses par version. (chaîne[], facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt (chaîne, requis)
list_repository_collaborators - Lister les collaborateurs du dépôt
Portées du défi OAuth : repo
affiliation : Filtrer par affiliation. Peut être l'un des suivants : « outside » (collaborateurs externes), « direct » (tous ceux ayant des permissions, indépendamment de l'appartenance à l'organisation), « all » (tous les collaborateurs). Par défaut : « all » (chaîne, facultatif)
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (par défaut 1, min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (par défaut 30, min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt (chaîne, requis)
list_tags - Lister les tags
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Nom du dépôt (chaîne, requis)
push_files - Pousser des fichiers vers un dépôt
Portées du défi OAuth : repo, workflow
branch : Branche vers laquelle pousser (chaîne, requis)
files : Tableau d'objets fichier à pousser, chaque objet avec un chemin (chaîne) et un contenu (chaîne) (objet[], requis)
message : Message de commit (chaîne, requis)
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
search_code - Rechercher du code
Portées du défi OAuth : repo
fields : Sous-ensemble de champs à retourner pour chaque résultat de recherche de code. S'il est omis, tous les champs sont retournés. Utilisez ceci pour réduire la taille de la réponse si vous n'avez besoin que de champs spécifiques ; omettre « repository » et « text_matches » en particulier supprime les données les plus volumineuses par résultat. (chaîne[], facultatif)
order : Ordre de tri des résultats (chaîne, facultatif)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
query : Requête de recherche (API REST de recherche de code GitHub). ET implicite entre les termes ; prend en charge OR, NOT et "quoted phrase" pour une correspondance exacte. Qualificatifs : repo:owner/repo, org:, user:, language:, path:dir (correspondance par préfixe), filename:exact.ext, extension:, in:file, in:path, size:, is:archived, is:fork. Max 256 caractères. Exemples : 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. (chaîne, requis)
sort : Champ de tri (« indexed » uniquement) (chaîne, facultatif)
search_commits - Rechercher des commits
Portées du défi OAuth : repo
order : Ordre de tri (chaîne, facultatif)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
query : Requête de recherche de commits (API REST de recherche de commits GitHub). Recherche uniquement dans les messages de commit de la branche par défaut. Limitez la recherche avec repo:owner/repo, org: ou user: (les requêtes sans qualificatif de portée correspondent à l'ensemble de GitHub et ne sont généralement pas ce que vous voulez). Autres qualificatifs : author:, committer:, author-name:, committer-name:, author-email:, committer-email:, author-date:, committer-date: (prend en charge les plages >, <, >=, <= et YYYY-MM-DD..YYYY-MM-DD), merge:true|false, hash:, tree:, parent:, is:public. Exemples : repo:owner/repo fix panic ; org:github author:defunkt committer-date:>=2024-01-01 ; "refactor cache" repo:o/r ; hash:abc1234 repo:o/r. (chaîne, requis)
sort : Trier par date d'auteur ou de commiteur (par défaut, meilleure correspondance) (chaîne, facultatif)
search_repositories - Rechercher des dépôts
Portées du défi OAuth : repo
minimal_output : Retourner des informations minimales sur le dépôt (par défaut : true). Lorsque false, retourne les objets complets du dépôt de l'API GitHub. (booléen, facultatif)
order : Ordre de tri (chaîne, facultatif)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
query : Requête de recherche de dépôts. Exemples : « machine learning in:name stars:>1000 language:python », « topic:react », « user:facebook ». Prend en charge la syntaxe de recherche avancée pour un filtrage précis. (chaîne, requis)
sort : Trier les dépôts par champ, par défaut meilleure correspondance (chaîne, facultatif)
Protection des secrets
get_secret_scanning_alert - Obtenir une alerte d'analyse des secrets
Portées du défi OAuth : security_events
alertNumber : Le numéro de l'alerte. (nombre, requis)
owner : Le propriétaire du dépôt. (chaîne, requis)
repo : Le nom du dépôt. (chaîne, requis)
list_secret_scanning_alerts - Lister les alertes d'analyse des secrets
Portées du défi OAuth : security_events
owner : Le propriétaire du dépôt. (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
repo : Le nom du dépôt. (chaîne, requis)
resolution : Filtrer par résolution (chaîne, facultatif)
secret_type : Une liste séparée par des virgules des types de secrets à retourner. Tous les modèles de secrets par défaut sont retournés. Pour retourner les modèles génériques, passez le(s) nom(s) de jeton dans le paramètre. (chaîne, facultatif)
state : Filtrer par état (chaîne, facultatif)
Avis de sécurité
get_global_security_advisory - Obtenir un avis de sécurité mondial
modified : Filtrer par date de publication ou de mise à jour, ou par plage de dates (date ISO 8601 ou plage). (chaîne, facultatif)
published : Filtrer par date de publication ou plage de dates (date ISO 8601 ou plage). (chaîne, facultatif)
severity : Filtrer par gravité. (chaîne, facultatif)
type : Type d'avis. (chaîne, facultatif)
updated : Filtrer par date de mise à jour ou plage de dates (date ISO 8601 ou plage). (chaîne, facultatif)
list_org_repository_security_advisories - Lister les avis de sécurité des dépôts d'une organisation
Portées du défi OAuth : security_events
direction : Sens du tri. (chaîne, facultatif)
org : Identifiant de connexion de l'organisation. (chaîne, obligatoire)
sort : Champ de tri. (chaîne, facultatif)
state : Filtrer par état de l'avis. (chaîne, facultatif)
list_repository_security_advisories - Lister les avis de sécurité d'un dépôt
Portées du défi OAuth : security_events
direction : Sens du tri. (chaîne, facultatif)
owner : Propriétaire du dépôt. (chaîne, obligatoire)
repo : Nom du dépôt. (chaîne, obligatoire)
sort : Champ de tri. (chaîne, facultatif)
state : Filtrer par état de l'avis. (chaîne, facultatif)
Stargazers
list_starred_repositories - Lister les dépôts suivis d'une étoile
Portées du défi OAuth : repo
direction : Sens du tri des résultats. (chaîne, facultatif)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
sort : Comment trier les résultats. Peut être 'created' (date de l'étoile) ou 'updated' (dernier push sur le dépôt). (chaîne, facultatif)
username : Nom d'utilisateur pour lister les dépôts suivis d'une étoile. Par défaut, l'utilisateur authentifié. (chaîne, facultatif)
star_repository - Mettre une étoile sur un dépôt
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (chaîne, obligatoire)
repo : Nom du dépôt (chaîne, obligatoire)
unstar_repository - Retirer l'étoile d'un dépôt
Portées du défi OAuth : repo
owner : Propriétaire du dépôt (chaîne, obligatoire)
repo : Nom du dépôt (chaîne, obligatoire)
Utilisateurs
search_users - Rechercher des utilisateurs
Portées du défi OAuth : repo
order : Ordre de tri (chaîne, facultatif)
page : Numéro de page pour la pagination (min 1) (nombre, facultatif)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, facultatif)
query : Requête de recherche d'utilisateurs. Exemples : 'john smith', 'location:seattle', 'followers:>100'. La recherche est automatiquement limitée à type:user. (chaîne, obligatoire)
sort : Trier les utilisateurs par nombre d'abonnés ou de dépôts, ou par date d'arrivée sur GitHub. (chaîne, facultatif)
Outils supplémentaires dans le serveur MCP GitHub distant
Copilot
create_pull_request_with_copilot - Effectuer une tâche avec l'agent de codage GitHub Copilot
owner : Propriétaire du dépôt. Vous pouvez deviner le propriétaire, mais confirmez-le avec l'utilisateur avant de continuer. (chaîne, obligatoire)
repo : Nom du dépôt. Vous pouvez deviner le nom du dépôt, mais confirmez-le avec l'utilisateur avant de continuer. (chaîne, obligatoire)
problem_statement : Description détaillée de la tâche à effectuer (par ex. « Implémenter une fonctionnalité qui fait X », « Corriger le bug Y », etc.) (chaîne, obligatoire)
title : Titre de la demande de tirage (pull request) qui sera créée (chaîne, obligatoire)
base_ref : Référence Git (par ex. branche) à partir de laquelle l'agent commencera son travail. Si non spécifiée, la branche par défaut du dépôt est utilisée (chaîne, facultatif)
Espaces Copilot
Remarque sur l'authentification
Les PAT à granularité fine ne sont pas masqués par le filtrage de portée des PAT classiques, ces outils peuvent donc apparaître même si le jeton ne peut pas les utiliser.
Pour les espaces appartenant à une organisation, les PAT à granularité fine doivent être installés sur l'organisation propriétaire et inclure organization_copilot_spaces: read.
Si un espace appartenant à une organisation contient des ressources adossées à des dépôts, le jeton doit également avoir accès à chaque dépôt référencé, sinon l'espace peut être considéré comme introuvable.
get_copilot_space - Obtenir un espace Copilot
owner : Propriétaire de l'espace. (chaîne, obligatoire)
name : Nom de l'espace. (chaîne, obligatoire)
list_copilot_spaces - Lister les espaces Copilot
Recherche dans la documentation d'assistance GitHub
github_support_docs_search - Récupérer la documentation pertinente pour répondre aux questions sur les produits et l'assistance GitHub. Les sujets d'assistance incluent : Workflows GitHub Actions, Authentification, Demandes d'assistance GitHub, Pratiques de demande de tirage, Maintenance de dépôt, GitHub Pages, GitHub Packages, Discussions GitHub, Espaces Copilot
query : Entrée de l'utilisateur concernant la question à laquelle il faut répondre. Il s'agit du dernier message utilisateur brut et non modifié. Vous devez TOUJOURS laisser le message utilisateur tel quel, ne le modifiez jamais. (chaîne, obligatoire)
Mode lecture seule
Pour exécuter le serveur en mode lecture seule, vous pouvez utiliser l'indicateur --read-only. Cela n'offrira que des outils en lecture seule, empêchant toute modification des dépôts, problèmes, demandes de tirage, etc.
./github-mcp-server --read-only
Avec Docker, vous pouvez passer le mode lecture seule comme variable d'environnement :
Le mode verrouillage limite le contenu que le serveur affichera depuis les dépôts publics. Lorsqu'il est activé, le serveur vérifie si l'auteur de chaque élément a un accès en poussée (push) au dépôt. Les dépôts privés ne sont pas affectés, et les collaborateurs conservent un accès complet à leur propre contenu.
Le mode verrouillage est un filtre de contenu au mieux, destiné à réduire le risque d'injection par invite depuis un contenu de dépôt non fiable (problèmes, demandes de tirage, commentaires, commits, etc.). Il ne constitue pas une frontière d'autorisation : il ne modifie pas ce que l'identifiant GitHub sous-jacent peut lire ou écrire, et le contenu retenu d'une réponse d'outil filtrée peut toujours être accessible via d'autres outils ou un accès direct à l'API GitHub avec le même identifiant.
Exception intentionnelle : le contenu rédigé par un petit ensemble de comptes de robots de confiance (actuellement github-actions[bot] et copilot) est toujours considéré comme sûr, quel que soit l'accès en poussée. Cela évite de filtrer les sorties d'automatisation courantes (par ex. commits ou commentaires générés par CI) qui seraient autrement retenues en mode verrouillage.
./github-mcp-server --lockdown-mode
Avec Docker, définissez la variable d'environnement correspondante :
En mode HTTP, cet indicateur (ou GITHUB_LOCKDOWN_MODE) est une limite supérieure : l'en-tête de requête X-MCP-Lockdown peut activer le mode verrouillage lorsque l'opérateur ne l'a pas fait, mais il ne peut pas désactiver le mode verrouillage que l'opérateur a déjà activé. Voir le Guide de configuration du serveur pour plus de détails.
Le comportement du mode verrouillage dépend de l'outil appelé.
Les outils suivants renverront une erreur lorsque l'auteur n'a pas l'accès en poussée :
issue_read:get
pull_request_read:get
pull_request_read:get_diff
pull_request_read:get_files
pull_request_read:get_commits
Les outils suivants filtreront le contenu des utilisateurs sans accès en poussée :
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 / Remplacement des descriptions
Les descriptions des outils peuvent être remplacées en créant un
fichier github-mcp-server-config.json dans le même répertoire que le binaire.
Le fichier doit contenir un objet JSON avec les noms des outils comme clés et les nouvelles
descriptions comme valeurs. Par exemple :
{
"TOOL_ADD_ISSUE_COMMENT_DESCRIPTION": "an alternative description",
"TOOL_CREATE_BRANCH_DESCRIPTION": "Create a new branch in a GitHub repository"
}
Vous pouvez créer un export des traductions actuelles en exécutant le binaire avec
l'indicateur --export-translations.
Cet indicateur préservera toutes les traductions/remplacements que vous avez effectués, tout en ajoutant
toutes les nouvelles traductions ajoutées au binaire depuis votre dernier
export.
Vous pouvez également utiliser des variables d'environnement pour remplacer les descriptions. Les noms
des variables d'environnement sont les mêmes que les clés du fichier JSON, préfixés par
GITHUB_MCP_ et en majuscules.
Par exemple, pour remplacer l'outil TOOL_ADD_ISSUE_COMMENT_DESCRIPTION, vous pouvez
définir la variable d'environnement suivante :
export GITHUB_MCP_TOOL_ADD_ISSUE_COMMENT_DESCRIPTION="an alternative description"
Remplacement du nom et du titre du serveur
Le même mécanisme de remplacement peut être utilisé pour personnaliser les champs name et
title du serveur MCP dans la réponse d'initialisation. Cela est utile lors de l'exécution
de plusieurs instances du serveur MCP GitHub (par ex. une pour github.com et une pour
GitHub Enterprise Server) afin que les agents puissent les distinguer.
Clé
Variable d'environnement
Défaut
SERVER_NAME
GITHUB_MCP_SERVER_NAME
github-mcp-server
SERVER_TITLE
GITHUB_MCP_SERVER_TITLE
GitHub MCP Server
Par exemple, pour configurer une instance de serveur pour GitHub Enterprise Server :
L'API Go exportée de ce module doit actuellement être considérée comme instable et sujette à des changements de rupture. À l'avenir, nous pourrions offrir une stabilité ; veuillez signaler un problème s'il existe un cas d'utilisation où cela serait précieux.
Contribution
Les contributions sont les bienvenues. Avant d'ouvrir une demande de tirage, veuillez lire le guide de contribution pour les instructions de configuration, de test, de linting et de génération de documentation.
Assistance
Pour obtenir de l'aide sur l'utilisation du serveur MCP GitHub, consultez le guide d'assistance. Si vous avez trouvé un bug ou souhaitez demander une fonctionnalité, veuillez rechercher les problèmes existants avant d'en ouvrir un nouveau.
Sécurité
Veuillez ne pas signaler les vulnérabilités de sécurité via les problèmes publics. Suivez les instructions de la politique de sécurité pour signaler les vulnérabilités de manière responsable.
Licence
Ce projet est sous licence MIT open source. Veuillez vous référer à MIT pour les conditions complètes.