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.
Parcourir et rechercher des dépôts — Demandez à votre assistant de trouver des fichiers, lire du code ou analyser l'historique des commits à l'aide des outils de l'ensemble repos.
Gérer les issues et les pull requests — Créez, mettez à jour et triez les issues ou les PR à l'aide des outils des ensembles issues et pull_requests.
Surveiller les workflows CI/CD — Vérifiez l'état des exécutions GitHub Actions, enquêtez sur les échecs de build et gérez les versions via l'ensemble d'outils actions.
Examiner les alertes de sécurité du code — Examinez les résultats du code scanning, les alertes Dependabot et les résultats du secret scanning à l'aide des ensembles d'outils code_security, dependabot et secret_protection.
Collaborer sur les discussions et les projets — Accédez aux discussions d'équipe, gérez les tableaux de projet et traitez les notifications via les ensembles d'outils discussions, projects et notifications.
Documentation
Serveur MCP GitHub
Le serveur MCP GitHub 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 tickets 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 d'un projet sur n'importe quel dépôt auquel vous avez accès.
Automatisation des tickets et PR : Créer, mettre à jour et gérer les tickets et les pull requests. Laissez l'IA vous aider à trier les bugs, à réviser 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 simples requêtes en langage naturel aux flux de travail complexes d'agents en plusieurs étapes.
Serveur MCP GitHub distant
Le serveur MCP GitHub distant est hébergé par GitHub et constitue la méthode la plus simple pour démarrer rapidement. Si votre hôte MCP ne prend pas en charge les serveurs MCP distants, ne vous inquiétez pas ! Vous pouvez utiliser la version locale du serveur MCP GitHub à 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 processus terminé, activez le mode Agent (situé à côté de la zone de saisie de texte 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 du MCP distant et d'OAuth.
Sinon, pour configurer manuellement VS Code, choisissez le bloc JSON approprié dans les exemples ci-dessous et ajoutez-le à la configuration de votre 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 plus de 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 la connexion, la personnalisation et l'installation du serveur MCP GitHub 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 : Lors de l'utilisation d'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 S'authentifier 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 à l'adresse ghcr.io/github/github-mcp-server. L'image est publique ; si vous obtenez des erreurs lors du pull, il se peut que votre jeton ait expiré et que vous deviez 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. Voir Connexion OAuth du serveur local pour savoir comment cela fonctionne, le repli sans tête/code de périphérique, 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 êtes à l'aise d'accorder à vos outils d'IA (pour en savoir plus sur les jetons d'accès, veuillez consulter 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 les 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.
Meilleures pratiques de sécurité des jetons
Portées minimales : N'accordez que les autorisations nécessaires
repo - Opérations sur le dépôt
read:packages - Accès à l'image Docker
read:org - Accès à l'équipe de l'organisation
Jetons séparés : Utilisez des PAT différents 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://, car il utilise par défaut http://, ce que GitHub Enterprise Server ne prend pas en charge.
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 processus terminé, activez le mode Agent (situé à côté de la zone de saisie de texte de Copilot Chat) et le serveur démarrera.
Installer 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 pour que le rappel de connexion du conteneur soit accessible :
Voir Connexion OAuth du serveur local pour le flux binaire natif (aucun port fixe nécessaire), le repli sans tête/code de périphérique, GitHub Enterprise Server / ghe.com, et l'apport de votre propre OAuth ou application GitHub.
Ou authentifiez-vous avec un jeton d'accès personnel. Définissez GITHUB_PERSONAL_ACCESS_TOKEN à la place (il a priorité sur OAuth) :
Optionnellement, vous pouvez ajouter un exemple similaire (c'est-à-dire sans la clé mcp) à un fichier appelé .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 MCP GitHub 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 consulter la documentation de votre application hôte pour la syntaxe de configuration MCP correcte et le processus de configuration.
Construire à 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 le drapeau -o. Vous devez configurer votre serveur pour utiliser l'exécutable compilé comme son command. Par exemple :
Le binaire github-mcp-server inclut quelques sous-commandes CLI utiles pour le débogage et l'exploration du serveur.
github-mcp-server tool-search "<query>" recherche des outils par nom, description et noms des paramètres d'entrée. Utilisez --max-results pour retourner plus de correspondances.
Exemple (la sortie en couleur nécessite un TTY ; utilisez docker run -t (ou -it) lors de l'exécution dans Docker) :
Le serveur GitHub MCP prend en charge l'activation ou la désactivation de groupes spécifiques de fonctionnalités via le drapeau --toolsets. Cela vous permet de contrôler quelles capacités de l'API GitHub sont disponibles pour vos outils d'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 et invites MCP pertinentes sont également incluses le cas échéant.
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 en utilisant le drapeau --tools. Les outils peuvent être utilisés indépendamment ou combinés avec des ensembles d'outils pour un contrôle fin.
Ceci enregistre tous les outils des ensembles repos et issues, plus get_gist.
Notes importantes :
Les outils et les ensembles d'outils peuvent être utilisés ensemble
Le mode lecture seule est prioritaire : 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). Les 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 rétrocompatibilité. Voir Renommage d'outils pour plus de détails.
Utilisation des ensembles d'outils avec Docker
Lors de l'utilisation de Docker, vous pouvez passer les ensembles d'outils comme variables d'environnement :
Lors de l'utilisation de 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, indépendamment de toute autre 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 passée 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 qui fournissent 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
dependabot
Outils Dependabot
discussions
Outils liés aux discussions GitHub
gists
Outils liés aux Gist GitHub
git
Outils liés à l'API Git de GitHub pour les opérations Git de bas niveau
issues
Outils liés aux issues 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 pull requests 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, Copilot Coding Agent)
copilot_spaces
Outils liés aux espaces Copilot
github_support_docs_search
Rechercher dans 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 workflow, jobs et artefacts)
Portées OAuth requises : repo
method : La méthode à exécuter (chaîne, requis)
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
resource_id : L'identifiant unique de la ressource. Cela variera en fonction de la "méthode" fournie, assurez-vous donc de fournir l'ID correct :
Fournissez un ID de workflow ou un nom de fichier de workflow (par exemple, ci.yaml) pour la méthode 'get_workflow'.
Fournissez un ID d'exécution de workflow pour les méthodes 'get_workflow_run', 'get_workflow_run_usage' et 'get_workflow_run_logs_url'.
Fournissez un ID d'artefact pour la méthode 'download_workflow_run_artifact'.
Fournissez un ID de job pour la méthode 'get_workflow_job'.
(chaîne, requis)
actions_list - Lister les workflows GitHub Actions dans un dépôt
Portées OAuth requises : repo
method : L'action à effectuer (chaîne, requis)
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (par défaut : 1) (nombre, optionnel)
per_page : Résultats par page pour la pagination (par défaut : 30, max : 100) (nombre, optionnel)
repo : Nom du dépôt (chaîne, requis)
resource_id : L'identifiant unique de la ressource. Cela variera en fonction de la "méthode" fournie, assurez-vous donc de fournir l'ID correct :
Ne fournissez aucun ID de ressource pour la méthode 'list_workflows'.
Fournissez un ID de workflow ou un nom de fichier de workflow (par exemple, ci.yaml) pour la méthode 'list_workflow_runs', ou omettez pour lister toutes les exécutions de workflow dans le dépôt.
Fournissez un ID d'exécution de workflow pour les méthodes 'list_workflow_jobs' et 'list_workflow_run_artifacts'.
(chaîne, optionnel)
workflow_jobs_filter : Filtres pour les jobs de workflow. UNIQUEMENT utilisé lorsque la méthode est 'list_workflow_jobs' (objet, optionnel)
workflow_runs_filter : Filtres pour les exécutions de workflow. UNIQUEMENT utilisé lorsque la méthode est 'list_workflow_runs' (objet, optionnel)
actions_run_trigger - Déclencher des actions de workflow GitHub Actions
Portées OAuth requises : repo
inputs : Entrées que le workflow accepte. Utilisé uniquement pour la méthode 'run_workflow'. (objet, optionnel)
method : La méthode à exécuter (chaîne, requis)
owner : Propriétaire du dépôt (chaîne, requis)
ref : La référence git pour le workflow. La référence peut être un nom de branche ou de tag. Requis pour la méthode 'run_workflow'. (chaîne, optionnel)
repo : Nom du dépôt (chaîne, requis)
run_id : L'ID de l'exécution du workflow. Requis pour toutes les méthodes sauf 'run_workflow'. (nombre, optionnel)
workflow_id : L'ID 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, optionnel)
get_job_logs - Obtenir les journaux des jobs de workflow GitHub Actions
Portées OAuth requises : repo
failed_only : Lorsque vrai, obtient les journaux pour tous les jobs échoués dans l'exécution de workflow spécifiée par run_id. Nécessite que run_id soit fourni. (booléen, optionnel)
job_id : L'identifiant unique du job de workflow. Requis lors de l'obtention des journaux pour un seul job. (nombre, optionnel)
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
return_content : Retourne le contenu réel du journal au lieu des URL (booléen, optionnel)
run_id : L'identifiant unique de l'exécution du workflow. Requis lorsque failed_only est vrai pour obtenir les journaux de tous les jobs échoués dans l'exécution. (nombre, optionnel)
tail_lines : Nombre de lignes à retourner depuis la fin du journal (nombre, optionnel)
Qualité du code- **get_code_quality_finding** - Obtenir une conclusion de qualité du code
- **Portées OAuth requises** : `repo`
- `findingNumber` : Le numéro de la conclusion. (nombre, requis)
- `owner` : Le propriétaire du dépôt. (chaîne, requis)
- `repo` : Le nom du dépôt. (chaîne, requis)
Sécurité du code
get_code_scanning_alert - Obtenir une alerte d'analyse de code
Portées OAuth requises : security_events
Portées OAuth acceptées : repo, 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_code_scanning_alerts - Lister les alertes d'analyse de code
Portées OAuth requises : security_events
Portées OAuth acceptées : repo, security_events
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)
ref : La référence Git pour les résultats que vous souhaitez lister. (chaîne, optionnel)
repo : Le nom du dépôt. (chaîne, requis)
severity : Filtrer les alertes d'analyse de code par gravité (chaîne, optionnel)
state : Filtrer les alertes d'analyse de code par état. Par défaut, ouvert (chaîne, optionnel)
tool_name : Le nom de l'outil utilisé pour l'analyse de code. (chaîne, optionnel)
Contexte
get_me - Obtenir mon profil utilisateur
Aucun paramètre requis
get_team_members - Obtenir les membres de l'équipe
user : Nom d'utilisateur pour lequel obtenir les équipes. Si non fourni, utilise l'utilisateur authentifié. (chaîne, optionnel)
Copilot
assign_copilot_to_issue - Assigner Copilot à un ticket
Portées OAuth requises : repo
base_ref : Référence Git (par exemple, branche) à partir de laquelle l'agent commencera son travail. Si non spécifié, utilise la branche par défaut du dépôt (chaîne, optionnel)
custom_instructions : Instructions personnalisées optionnelles pour guider l'agent au-delà du corps du ticket. Utilisez ceci pour fournir un contexte supplémentaire, des contraintes ou des conseils qui ne sont pas capturés dans la description du ticket (chaîne, optionnel)
issue_number : Numéro du ticket (nombre, requis)
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
request_copilot_review - Demander une revue Copilot
Portées OAuth requises : repo
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)
Dependabot
get_dependabot_alert - Obtenir une alerte Dependabot
Portées OAuth requises : security_events
Portées OAuth acceptées : repo, 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_dependabot_alerts - Lister les alertes Dependabot
Portées OAuth requises : security_events
Portées OAuth acceptées : repo, security_events
after : Curseur pour la pagination. Utilisez le curseur de la réponse précédente. (chaîne, optionnel)
owner : Le propriétaire du dépôt. (chaîne, requis)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, optionnel)
repo : Le nom du dépôt. (chaîne, requis)
severity : Filtrer les alertes Dependabot par gravité (chaîne, optionnel)
state : Filtrer les alertes Dependabot par état. Par défaut, ouvert (chaîne, optionnel)
Discussions
discussion_comment_write - Gérer les commentaires de discussion
Portées OAuth requises : repo
body : Contenu du commentaire (requis pour les méthodes 'add', 'reply' et 'update') (chaîne, optionnel)
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 ; les discussions GitHub ne prennent en charge qu'un seul niveau d'imbrication. (chaîne, optionnel)
discussionNumber : Numéro de la discussion (requis pour les méthodes 'add' et 'reply') (nombre, optionnel)
method : Opération d'écriture à effectuer sur un commentaire de discussion.
Les options sont :
'add' - ajoute un nouveau commentaire de premier niveau à une discussion.
'reply' - répond à un commentaire de discussion de premier niveau (les discussions GitHub ne prennent 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' - annule le marquage d'un commentaire de discussion comme réponse (Q&R uniquement).
(chaîne, requis)
owner : Propriétaire du dépôt (requis pour les méthodes 'add' et 'reply') (chaîne, optionnel)
repo : Nom du dépôt (requis pour les méthodes 'add' et 'reply') (chaîne, optionnel)
get_discussion - Obtenir une discussion
Portées OAuth requises : repo
discussionNumber : Numéro de la discussion (nombre, requis)
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
get_discussion_comments - Obtenir les commentaires d'une discussion
Portées OAuth requises : repo
after : Curseur pour la pagination. Utilisez le curseur de la réponse précédente. (chaîne, optionnel)
discussionNumber : Numéro de la discussion (nombre, requis)
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, 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)
list_discussion_categories - Lister les catégories de discussion
Portées OAuth requises : repo
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt. Si non fourni, les catégories de discussion seront interrogées au niveau de l'organisation. (chaîne, optionnel)
list_discussions - Lister les discussions
Portées OAuth requises : repo
after : Curseur pour la pagination. Utilisez le curseur de la réponse précédente. (chaîne, optionnel)
category : Filtre optionnel par ID de catégorie de discussion. Si fourni, seules les discussions avec cette catégorie sont listées. (chaîne, optionnel)
direction : Sens de l'ordre. (chaîne, optionnel)
orderBy : Champ de tri des discussions. Si fourni, le 'sens' 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. Si non fourni, les discussions seront interrogées au niveau de l'organisation. (chaîne, optionnel)
Gists
create_gist - Créer un Gist
Portées OAuth requises : gist
content : Contenu pour la création simple d'un gist à fichier unique (chaîne, requis)
description : Description du gist (chaîne, optionnel)
filename : Nom de fichier pour la création simple d'un gist à fichier unique (chaîne, requis)
public : Si le gist est public (booléen, optionnel)
get_gist - Obtenir le contenu d'un Gist
gist_id : L'ID du gist (chaîne, requis)
list_gists - Lister les Gists
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)
since : Uniquement les gists mis à jour après cette heure (horodatage ISO 8601) (chaîne, optionnel)
username : Nom d'utilisateur GitHub (omettre pour les gists de l'utilisateur authentifié) (chaîne, optionnel)
update_gist - Mettre à jour un Gist
Portées OAuth requises : gist
content : Contenu du fichier (chaîne, requis)
description : Description mise à jour du gist (chaîne, optionnel)
filename : Nom de fichier à mettre à jour ou créer (chaîne, requis)
gist_id : ID du gist à mettre à jour (chaîne, requis)
Git
get_repository_tree - Obtenir l'arborescence du dépôt
Portées OAuth requises : 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 afficher uniquement 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'arbre. Par défaut, 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 tag) de l'arbre. Par défaut, la branche par défaut du dépôt (chaîne, optionnel)
Tickets
add_issue_comment - Ajouter un commentaire à un ticket ou une pull request
Portées OAuth requises : 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 ticket ou de pull request auquel réagir. Utilisez ceci pour les réactions aux commentaires ; omettez-le pour réagir au ticket ou à la pull request elle-même. Ne peut pas être combiné avec body. (nombre, optionnel)
issue_number : Numéro du ticket ou de la pull request à commenter ou auquel réagir. (nombre, requis)
owner : Propriétaire du dépôt (chaîne, requis)
reaction : Réaction emoji à ajouter. Requis sauf si body est fourni. (chaîne, optionnel)
repo : Nom du dépôt (chaîne, requis)
get_label - Récupérer un label spécifique d’un dépôt
Portées OAuth requises : repo
name : Nom du label. (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’une issue
Portées OAuth requises : repo
issue_number : Le numéro de l’issue (nombre, requis)
method : L’opération de lecture à effectuer sur une seule issue.
Les options sont :
get - Obtenir les détails de l’issue. Renvoie également les indicateurs de hiérarchie au mieux (has_parent, has_children) ; parent et sub_issues_summary sont des résumés de relation optionnels.
get_comments - Obtenir les commentaires de l’issue.
get_sub_issues - Obtenir les sous-issues (enfants) de l’issue.
get_parent - Obtenir l’issue parente, si cette issue est une sous-issue d’une autre.
get_labels - Obtenir les labels assignés à l’issue.
(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 une issue / pull request
Portées OAuth requises : repo
assignees : Noms d’utilisateurs à assigner à cette issue (chaîne[], optionnel)
body : Contenu du corps de l’issue (chaîne, optionnel)
duplicate_of : Numéro de l’issue dont celle-ci est un doublon. Utilisé uniquement lorsque state_reason est 'duplicate'. (nombre, optionnel)
issue_fields : Valeurs des champs d’issue à définir ou effacer. Chaque élément nécessite 'field_name' et exactement l’un de 'value', 'field_option_name', ou 'delete: true'. (objet[], optionnel)
issue_number : Numéro de l’issue à mettre à jour (nombre, optionnel)
labels : Labels à appliquer à cette issue (chaîne[], optionnel)
method : Opération d’écriture à effectuer sur une seule issue.
Les options sont :
'create' - crée une nouvelle issue.
'update' - met à jour une issue existante.
(chaîne, requis)
milestone : Numéro du jalon (nombre, optionnel)
owner : Propriétaire du dépôt (chaîne, requis)
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 de l’issue (chaîne, optionnel)
type : Type de cette issue. À utiliser uniquement si les types d’issue sont activés pour ce dépôt. Utilisez l’outil 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 d’issue, omettez ce paramètre. (chaîne, optionnel)
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 d’issue disponibles
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 d’issue pour ce dépôt spécifique. Lorsqu’il est omis, renvoie directement les types d’issue au niveau de l’organisation. (chaîne, optionnel)
list_issues - Lister les issues
Portées OAuth requises : repo
after : Curseur pour la pagination. Utilisez le curseur de la réponse précédente. (chaîne, optionnel)
direction : Direction de l’ordre. Si fourni, 'orderBy' doit également être fourni. (chaîne, optionnel)
field_filters : Filtrer par valeurs de champs d’issue 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 de sélection unique, texte, nombre ou date YYYY-MM-DD). (objet[], optionnel)
labels : Filtrer par labels (chaîne[], optionnel)
orderBy : Ordonner les issues par champ. Si 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 issues ouvertes et fermées sont renvoyées si non fourni (chaîne, optionnel)
search_issues - Rechercher des issues
Portées OAuth requises : repo
order : Ordre de tri (chaîne, optionnel)
owner : Propriétaire du dépôt optionnel. Si fourni avec repo, seules les issues de ce dépôt sont listées. (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 : Requête de recherche utilisant la syntaxe de recherche d’issues GitHub (chaîne, requis)
repo : Nom du dépôt optionnel. Si fourni avec owner, seules les issues de ce dépôt sont listées. (chaîne, optionnel)
sort : Champ de tri par nombre de correspondances des catégories, par défaut meilleure correspondance (chaîne, optionnel)
sub_issue_write - Modifier une sous-issue
Portées OAuth requises : repo
after_id : L’ID de la sous-issue à prioriser après (soit after_id, soit before_id doit être spécifié) (nombre, optionnel)
before_id : L’ID de la sous-issue à prioriser avant (soit after_id, soit before_id doit être spécifié) (nombre, optionnel)
issue_number : Le numéro de l’issue parente (nombre, requis)
method : L’action à effectuer sur une seule sous-issue
Les options sont :
'add' - ajouter une sous-issue à une issue parente dans un dépôt GitHub.
'remove' - supprimer une sous-issue d’une issue parente dans un dépôt GitHub.
'reprioritize' - modifier l’ordre des sous-issues au sein d’une issue parente dans un dépôt GitHub. Utilisez soit 'after_id', soit 'before_id' pour spécifier la nouvelle position.
Écrit la hiérarchie des issues. Pour déplacer une sous-issue 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 : Lorsque vrai, remplace le parent actuel de la sous-issue. À utiliser uniquement avec la méthode 'add'. (booléen, optionnel)
repo : Nom du dépôt (chaîne, requis)
sub_issue_id : L’ID de la sous-issue à ajouter. L’ID n’est pas le même que le numéro d’issue (nombre, requis)
Labels
get_label - Récupérer un label spécifique d’un dépôt
Portées OAuth requises : repo
name : Nom du label. (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 labels du dépôt
Portées OAuth requises : repo
color : Couleur du label en code hexadécimal à 6 caractères sans le préfixe '#' (ex., 'f29513'). Requis pour 'create', optionnel pour 'update'. (chaîne, optionnel)
description : Texte de description du label. Optionnel pour 'create' et 'update'. (chaîne, optionnel)
method : Opération à effectuer : 'create', 'update', ou 'delete' (chaîne, requis)
name : Nom du label - requis pour toutes les opérations (chaîne, requis)
new_name : Nouveau nom pour le label (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 labels d’un dépôt
Portées OAuth requises : 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 - Ignorer une notification
Portées OAuth requises : notifications
state : Le nouvel état de la notification (read/done) (chaîne, requis)
threadID : L’ID du fil de notification (chaîne, requis)
get_notification_details - Obtenir les détails d’une notification
Portées OAuth requises : notifications
notificationID : L’ID de la notification (chaîne, requis)
list_notifications - Lister les notifications
Portées OAuth requises : notifications
before : Afficher uniquement les notifications mises à jour avant la date donnée (format ISO 8601) (chaîne, optionnel)
filter : Filtrer les notifications, utiliser la valeur par défaut sauf indication contraire. Les notifications lues sont celles déjà reconnues par l’utilisateur. Les notifications participantes sont celles où l’utilisateur est directement impliqué, comme les issues ou pull requests qu’il a commentées ou créées. (chaîne, optionnel)
owner : Propriétaire du dépôt optionnel. Si fourni avec repo, seules les notifications de ce dépôt sont listées. (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)
repo : Nom du dépôt optionnel. Si fourni avec owner, seules les notifications de ce dépôt sont listées. (chaîne, optionnel)
since : Afficher uniquement les notifications mises à jour après la date donnée (format ISO 8601) (chaîne, optionnel)
manage_notification_subscription - Gérer l’abonnement aux notifications
Portées OAuth requises : notifications
action : Action à effectuer : ignore, watch, ou delete l’abonnement aux notifications. (chaîne, requis)
notificationID : L’ID du fil de notification. (chaîne, requis)
manage_repository_notification_subscription - Gérer l’abonnement aux notifications du dépôt
Portées OAuth requises : notifications
action : Action à effectuer : ignore, watch, ou delete l’abonnement aux notifications du dépôt. (chaîne, requis)
owner : Le propriétaire du compte du dépôt. (chaîne, requis)
repo : Le nom du dépôt. (chaîne, requis)
mark_all_notifications_read - Marquer toutes les notifications comme lues
Portées OAuth requises : notifications
lastReadAt : Décrit le dernier point où les notifications ont été vérifiées (optionnel). Par défaut : Maintenant (chaîne, optionnel)
owner : Propriétaire du dépôt optionnel. Si fourni avec repo, seules les notifications de ce dépôt sont marquées comme lues. (chaîne, optionnel)
repo : Nom du dépôt optionnel. Si fourni avec owner, seules les notifications de ce dépôt sont marquées comme lues. (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 : Requête de recherche d'organisation. Exemples : 'microsoft', 'location:california', 'created:>=2025-01-01'. La recherche est automatiquement limitée à type:org. (chaîne, requis)
sort : Champ de tri par catégorie (chaîne, optionnel)
Projets
projects_get - Obtenir les détails des ressources GitHub Projects
Portées OAuth requises : read:project
Portées OAuth acceptées : project, read:project
field_id : L'ID du champ. Requis pour la méthode 'get_project_field'. (nombre, optionnel)
field_names : Liste spécifique de noms de champs à inclure dans la réponse lors de l'obtention d'un élément de projet (ex. ["Statut", "Priorité"]). Résolus côté serveur en IDs de champs — passez ceci au lieu de 'fields' lorsque vous ne connaissez que les noms lisibles. Mutuellement exclusif avec 'fields' — fournissez l'un ou l'autre, pas les deux. Utilisé uniquement pour la méthode 'get_project_item'. (chaîne[], optionnel)
fields : Liste spécifique d'IDs de champs à inclure dans la réponse lors de l'obtention d'un élément de projet (ex. ["102589", "985201", "169875"]). Si ni 'fields' ni 'field_names' n'est fourni, seul le champ titre est inclus. Mutuellement exclusif avec 'field_names' — fournissez l'un ou l'autre, pas les deux. Utilisé uniquement pour la méthode 'get_project_item'. (chaîne[], optionnel)
item_id : L'ID de l'élément. Requis pour la méthode 'get_project_item'. (nombre, optionnel)
method : La méthode à exécuter (chaîne, requis)
owner : Le propriétaire (identifiant utilisateur ou organisation). Le nom n'est pas sensible à la casse. (chaîne, optionnel)
owner_type : Type de propriétaire (utilisateur ou org). S'il n'est pas fourni, sera automatiquement détecté. (chaîne, optionnel)
project_number : Le numéro du projet. (nombre, optionnel)
status_update_id : L'ID de nœud de la mise à jour de statut du projet. Requis pour la méthode 'get_project_status_update'. (chaîne, optionnel)
projects_list - Lister les ressources GitHub Projects
Portées OAuth requises : read:project
Portées OAuth acceptées : project, read:project
after : Curseur de pagination avant provenant du précédent pageInfo.nextCursor. (chaîne, optionnel)
before : Curseur de pagination arrière provenant du précédent pageInfo.prevCursor (rare). (chaîne, optionnel)
field_names : Noms de champs à inclure lors du listage des éléments de projet (ex. ["Statut", "Priorité"]). Résolus côté serveur en IDs de champs — passez ceci au lieu de 'fields' lorsque vous ne connaissez que les noms lisibles. Les noms qui échouent à se résoudre retournent une erreur structurée. Mutuellement exclusif avec 'fields' — fournissez l'un ou l'autre, pas les deux. Utilisé uniquement pour la méthode 'list_project_items'. (chaîne[], optionnel)
fields : IDs de champs à inclure lors du listage des éléments de projet (ex. ["102589", "985201"]). CRITIQUE : Fournissez toujours pour obtenir les valeurs des champs. Sans cela (et sans 'field_names'), seuls les titres sont retournés. Mutuellement exclusif avec 'field_names' — fournissez l'un ou l'autre, pas les deux. Utilisé uniquement pour la méthode 'list_project_items'. (chaîne[], optionnel)
method : L'action à effectuer (chaîne, requis)
owner : Le propriétaire (identifiant utilisateur ou organisation). Le nom n'est pas sensible à la casse. (chaîne, requis)
owner_type : Type de propriétaire (utilisateur ou org). S'il n'est pas fourni, essaiera automatiquement les deux. (chaîne, optionnel)
per_page : Résultats par page (max 50) (nombre, optionnel)
project_number : Le numéro du projet. Requis pour les méthodes 'list_project_fields', 'list_project_items' et 'list_project_status_updates'. (nombre, optionnel)
query : Chaîne de filtre/requête. Pour list_projects : filtrer par texte du titre et état (ex. "roadmap is:open"). Pour list_project_items : filtrage avancé utilisant la syntaxe de filtrage de projet de GitHub. (chaîne, optionnel)
projects_write - Gérer les projets GitHub
Portées OAuth requises : project
body : Le corps de la mise à jour de statut (markdown). Utilisé pour la méthode 'create_project_status_update'. (chaîne, optionnel)
field_name : Le nom du champ d'itération (ex. 'Sprint'). Requis pour la méthode 'create_iteration_field'. (chaîne, optionnel)
issue_number : Le numéro de l'issue. 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 d'issue (combiner avec item_owner et item_repo). (nombre, optionnel)
item_id : L'ID 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 issue. (nombre, optionnel)
item_owner : Le propriétaire (utilisateur ou organisation) du dépôt contenant l'issue ou la pull request. 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 d'issue. (chaîne, optionnel)
item_repo : Le nom du dépôt contenant l'issue ou la pull request. 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 d'issue. (chaîne, optionnel)
item_type : Le type de l'élément, soit issue soit pull_request. Requis pour la méthode 'add_project_item'. (chaîne, optionnel)
iteration_duration : Durée en jours pour les itérations du champ (ex. 7 pour hebdomadaire, 14 pour bi-hebdomadaire). Requis pour la méthode 'create_iteration_field'. (nombre, optionnel)
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 à partir de 'start_date', ce qui est le bon choix dans la plupart des cas. (objet[], optionnel)
method : La méthode à exécuter (chaîne, requis)
owner : Le propriétaire du projet (identifiant utilisateur ou organisation). Le nom n'est pas sensible à la casse. (chaîne, requis)
owner_type : Type de propriétaire (utilisateur ou org). Requis pour la méthode 'create_project'. S'il n'est pas fourni pour les autres méthodes, sera automatiquement détecté. (chaîne, optionnel)
project_number : Le numéro du projet. Requis pour toutes les méthodes sauf 'create_project'. (nombre, optionnel)
pull_request_number : Le numéro de la pull request (à utiliser lorsque item_type est 'pull_request' pour la méthode 'add_project_item'). Fournissez soit issue_number soit pull_request_number. (nombre, optionnel)
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, optionnel)
status : Le statut du projet. Utilisé pour la méthode 'create_project_status_update'. (chaîne, optionnel)
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, optionnel)
title : Le titre du projet. Requis pour la méthode 'create_project'. (chaîne, optionnel)
updated_field : Objet décrivant le champ à mettre à jour et sa nouvelle valeur. Requis pour 'update_project_item'. Deux formes sont acceptées : (1) par ID — {"id": 123456, "value": "..."} ; (2) par nom — {"name": "Statut", "value": "En cours"}. Pour les champs à sélection unique, la résolution du nom de l'option nécessite la forme par nom ; avec la forme par ID, passez l'ID de l'option. Mettez value à null pour effacer le champ. (objet, optionnel)
Pull Requests
add_comment_to_pending_review - Ajouter un commentaire de revue à la dernière revue de pull request en attente du demandeur
Portées OAuth requises : 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, optionnel)
owner : Propriétaire du dépôt (chaîne, requis)
path : Le chemin relatif vers le 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 à commenter. LEFT indique l'état précédent, RIGHT indique le nouvel état (chaîne, optionnel)
startLine : Pour les commentaires multi-lignes, la première ligne de la plage à laquelle le commentaire s'applique (nombre, optionnel)
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, optionnel)
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
Portées OAuth requises : repo
body : Le texte de la réponse. Requis sauf si une réaction est fournie. (chaîne, optionnel)
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 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, optionnel)
reaction : Réaction emoji à ajouter. Requis sauf si le corps est fourni. (chaîne, optionnel)
repo : Nom du dépôt (chaîne, requis)
create_pull_request - Ouvrir une nouvelle pull request
Portées OAuth requises : repo
base : Branche dans laquelle fusionner (chaîne, requis)
body : Description de la PR (chaîne, optionnel)
draft : Créer en tant que PR brouillon (booléen, optionnel)
head : Branche contenant les modifications (chaîne, requis)
maintainer_can_modify : Autoriser les modifications par les mainteneurs (booléen, optionnel)
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/team-slug pour demander des revues (chaîne[], optionnel)
title : Titre de la PR (chaîne, requis)
list_pull_requests - Lister les pull requests
Portées OAuth requises : repo
base : Filtrer par branche de base (chaîne, optionnel)
direction : Direction du tri (chaîne, optionnel)
head : Filtrer par utilisateur/org et branche de tête (chaîne, optionnel)
owner : 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 : Nom du dépôt (chaîne, requis)
sort : Trier par (chaîne, optionnel)
state : Filtrer par état (chaîne, optionnel)
merge_pull_request - Fusionner une pull request
Portées OAuth requises : repo
commit_message : Détail supplémentaire pour le commit de fusion (chaîne, optionnel)
commit_title : Titre pour le commit de fusion (chaîne, optionnel)
merge_method : Méthode de fusion (chaîne, optionnel)
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
Portées OAuth requises : 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, optionnel)
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 combiné des commits du commit de tête d'une pull request.
get_files - Obtenir la liste des fichiers modifiés dans une pull request. À utiliser avec les paramètres de pagination pour contrôler le nombre de résultats retournés.
get_commits - Obtenir la liste des commits d'une pull request. À utiliser 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 regroupés logiquement, effectués au 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 par curseur (perPage, after) pour contrôler les résultats.
get_reviews - Obtenir les revues sur une pull request. En cas de demande de commentaires de revue, utilisez la méthode get_review_comments. À utiliser 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. À utiliser 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 tâches CI/CD individuelles et les vérifications 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, optionnel)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, optionnel)
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
Portées OAuth requises : repo
body : Texte du commentaire de revue (chaîne, optionnel)
commitID : SHA du commit à réviser (chaîne, optionnel)
event : Action de revue à effectuer. (chaîne, optionnel)
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 à partir de pull_request_read avec la méthode get_review_comments. (chaîne, optionnel)
search_pull_requests - Rechercher des pull requests
Portées OAuth requises : repo
order : Ordre de tri (chaîne, optionnel)
owner : Propriétaire du dépôt optionnel. S'il est fourni avec repo, seules les pull requests de ce dépôt sont listées. (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 : Requête de recherche utilisant la syntaxe de recherche de pull request GitHub (chaîne, requis)
repo : Nom du dépôt optionnel. S'il est fourni avec owner, seules les pull requests de ce dépôt sont listées. (chaîne, optionnel)
sort : Champ de tri par nombre de correspondances de catégories, par défaut la meilleure correspondance (chaîne, optionnel)
update_pull_request - Modifier une pull request
Portées OAuth requises : repo
base : Nouveau nom de la branche de base (chaîne, optionnel)
body : Nouvelle description (chaîne, optionnel)
draft : Marquer la pull request comme brouillon (true) ou prête pour revue (false) (booléen, optionnel)
maintainer_can_modify : Autoriser les modifications par les mainteneurs (booléen, optionnel)
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/team-slug auxquels demander des revues (chaîne[], optionnel)
state : Nouvel état (chaîne, optionnel)
title : Nouveau titre (chaîne, optionnel)
update_pull_request_branch - Mettre à jour la branche d'une pull request
Portées OAuth requises : repo
expectedHeadSha : Le SHA attendu de la référence HEAD de la pull request (chaîne, optionnel)
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
Portées OAuth requises : 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, optionnel)
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
Portées OAuth requises : repo
branch : Branche dans laquelle créer/mettre à jour le fichier (chaîne, requis)
content : Contenu du 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 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 à remplacer. Requis si le fichier existe déjà. (chaîne, optionnel)
create_repository - Créer un dépôt
Portées OAuth requises : repo
autoInit : Initialiser avec README (booléen, optionnel)
description : Description du dépôt (chaîne, optionnel)
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, optionnel)
private : Si le dépôt doit être privé. Par défaut true (privé) si omis. (booléen, optionnel)
delete_file - Supprimer un fichier
Portées OAuth requises : repo
branch : Branche de 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)
fork_repository - Forker un dépôt
Portées OAuth requises : repo
organization : Organisation vers laquelle forker (chaîne, optionnel)
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 OAuth requises : repo
detail : Niveau de détail à inclure pour les fichiers modifiés. "none" omet entièrement les statistiques et les fichiers. "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, optionnel)
owner : 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 : 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 OAuth requises : repo
owner : Propriétaire du dépôt (nom d'utilisateur ou organisation) (chaîne, requis)
path : Chemin vers le fichier/répertoire (chaîne, optionnel)
ref : Accepte les références git optionnelles telles que refs/tags/{tag}, refs/heads/{branch} ou refs/pull/{pr_number}/head (chaîne, optionnel)
repo : Nom du dépôt (chaîne, requis)
sha : Accepte un SHA de commit optionnel. S'il est spécifié, il sera utilisé à la place de ref (chaîne, optionnel)
get_latest_release - Obtenir la dernière version
Portées OAuth requises : 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 OAuth requises : 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 exemple, 'v1.0.0') (chaîne, requis)
get_tag - Obtenir les détails d'un tag
Portées OAuth requises : 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 OAuth requises : repo
owner : 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 : Nom du dépôt (chaîne, requis)
list_commits - Lister les commits
Portées OAuth requises : repo
author : Nom d'utilisateur ou adresse e-mail de l'auteur pour filtrer les commits (chaîne, optionnel)
owner : Propriétaire du dépôt (chaîne, requis)
page : Numéro de page pour la pagination (min 1) (nombre, optionnel)
path : Seuls les commits contenant ce chemin de fichier seront retournés (chaîne, optionnel)
perPage : Résultats par page pour la pagination (min 1, max 100) (nombre, optionnel)
repo : Nom du dépôt (chaîne, requis)
sha : SHA du commit, nom de branche ou de tag pour lister les commits. S'il n'est pas fourni, utilise la branche par défaut du dépôt. Si un SHA de commit est fourni, listera les commits jusqu'à ce SHA. (chaîne, optionnel)
since : Seuls les commits après cette date seront retournés (format ISO 8601 : YYYY-MM-DDTHH:MM:SSZ ou YYYY-MM-DD) (chaîne, optionnel)
until : Seuls les commits avant cette date seront retournés (format ISO 8601 : YYYY-MM-DDTHH:MM:SSZ ou YYYY-MM-DD) (chaîne, optionnel)
list_releases - Lister les versions
Portées OAuth requises : repo
owner : 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 : Nom du dépôt (chaîne, requis)
list_repository_collaborators - Lister les collaborateurs du dépôt
Portées OAuth requises : repo
affiliation : Filtrer par affiliation. Peut être l'un de : 'outside' (collaborateurs externes), 'direct' (tous avec permissions indépendamment de l'appartenance à l'organisation), 'all' (tous les collaborateurs). Par défaut : 'all' (chaîne, optionnel)
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, optionnel)
perPage : Résultats par page pour la pagination (par défaut 30, min 1, max 100) (nombre, optionnel)
repo : Nom du dépôt (chaîne, requis)
list_tags - Lister les tags
Portées OAuth requises : repo
owner : 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 : Nom du dépôt (chaîne, requis)
push_files - Pousser des fichiers vers le dépôt
Portées OAuth requises : repo
branch : Branche vers laquelle pousser (chaîne, requis)
files : Tableau d'objets fichier à pousser, chaque objet avec chemin (chaîne) et 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 OAuth requises : repo
order : Ordre de tri des résultats (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 : 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. Qualificateurs : repo:owner/repo, org:, user:, language:, path:dir (correspondance de 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, optionnel)
search_commits - Rechercher des commits
Portées OAuth requises : repo
order : Ordre de tri (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 : Requête de recherche de commits (API REST de recherche de commits GitHub). Recherche les messages de commit sur la branche par défaut uniquement. Délimitez la recherche avec repo:owner/repo, org: ou user: (les requêtes sans qualificateur de portée correspondent à tout GitHub et ne sont généralement pas ce que vous voulez). Autres qualificateurs : 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 commit (par défaut, meilleure correspondance) (chaîne, optionnel)
search_repositories - Rechercher des dépôts
Portées OAuth requises : repo
minimal_output : Renvoyer des informations minimales sur le dépôt (par défaut : true). Lorsque false, renvoie les objets dépôt complets de l'API GitHub. (booléen, optionnel)
order : Ordre de tri (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 : 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, optionnel)
Protection des secrets
get_secret_scanning_alert - Obtenir une alerte d'analyse des secrets
Portées OAuth requises : security_events
Portées OAuth acceptées : repo, 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 OAuth requises : security_events
Portées OAuth acceptées : repo, security_events
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)
resolution : Filtrer par résolution (chaîne, optionnel)
secret_type : Une liste séparée par des virgules des types de secrets à renvoyer. Tous les modèles de secrets par défaut sont renvoyés. Pour renvoyer des modèles génériques, passez le(s) nom(s) de jeton dans le paramètre. (chaîne, optionnel)
state : Filtrer par état (chaîne, optionnel)
Avis de sécurité
get_global_security_advisory - Obtenir un avis de sécurité global
Portées OAuth requises : security_events
Portées OAuth acceptées : repo, security_events
ghsaId : ID d'avis de sécurité GitHub (format : GHSA-xxxx-xxxx-xxxx). (chaîne, requis)
list_global_security_advisories - Lister les avis de sécurité globaux
Portées OAuth requises : security_events
Portées OAuth acceptées : repo, security_events
affects : Filtrer les avis par paquet ou version affecté(e) (par ex. "package1,package2@1.0.0"). (chaîne, optionnel)
cveId : Filtrer par ID CVE. (chaîne, optionnel)
cwes : Filtrer par ID Common Weakness Enumeration (par ex. ["79", "284", "22"]). (chaîne[], optionnel)
ecosystem : Filtrer par écosystème de paquet. (chaîne, optionnel)
ghsaId : Filtrer par ID d'avis de sécurité GitHub (format : GHSA-xxxx-xxxx-xxxx). (chaîne, optionnel)
modified : Filtrer par date de publication ou de mise à jour ou plage de dates (date ou plage ISO 8601). (chaîne, optionnel)
published : Filtrer par date de publication ou plage de dates (date ou plage ISO 8601). (chaîne, optionnel)
severity : Filtrer par gravité. (chaîne, optionnel)
type : Type d'avis. (chaîne, optionnel)
updated : Filtrer par date de mise à jour ou plage de dates (date ou plage ISO 8601). (chaîne, optionnel)
list_org_repository_security_advisories - Lister les avis de sécurité des dépôts de l'organisation
Portées OAuth requises : security_events
Portées OAuth acceptées : repo, security_events
direction : Direction du tri. (chaîne, optionnel)
org : Le login de l'organisation. (chaîne, requis)
sort : Champ de tri. (chaîne, optionnel)
state : Filtrer par état de l'avis. (chaîne, optionnel)
list_repository_security_advisories - Lister les avis de sécurité du dépôt
Portées OAuth requises : security_events
Portées OAuth acceptées : repo, security_events
direction : Direction du tri. (chaîne, optionnel)
owner : Le propriétaire du dépôt. (chaîne, requis)
repo : Le nom du dépôt. (chaîne, requis)
sort : Champ de tri. (chaîne, optionnel)
state : Filtrer par état de l'avis. (chaîne, optionnel)
Stargazers
list_starred_repositories - Lister les dépôts étoilés
Portées OAuth requises : repo
direction : La direction de tri des résultats. (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)
sort : Comment trier les résultats. Peut être soit 'created' (quand le dépôt a été étoilé) soit 'updated' (quand le dépôt a reçu sa dernière poussée). (chaîne, optionnel)
username : Nom d'utilisateur pour lequel lister les dépôts étoilés. Par défaut, l'utilisateur authentifié. (chaîne, optionnel)
star_repository - Étoiler un dépôt
Portées OAuth requises : repo
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
unstar_repository - Désétoiler un dépôt
Portées OAuth requises : repo
owner : Propriétaire du dépôt (chaîne, requis)
repo : Nom du dépôt (chaîne, requis)
Utilisateurs
search_users - Rechercher des utilisateurs
Portées OAuth requises : repo
order : Ordre de tri (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 : Requête de recherche d'utilisateurs. Exemples : 'john smith', 'location:seattle', 'followers:>100'. La recherche est automatiquement limitée à type:user. (chaîne, requis)
sort : Trier les utilisateurs par nombre de followers ou de dépôts, ou par date d'arrivée sur GitHub. (chaîne, optionnel)
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, requis)
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, requis)
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, requis)
title : Titre de la pull request qui sera créée (chaîne, requis)
base_ref : Référence Git (par ex., branche) à partir de laquelle l'agent commencera son travail. Si non spécifié, utilise par défaut la branche par défaut du dépôt (chaîne, optionnel)
Copilot Spaces
Note d'authentification
Les PAT à granularité fine ne sont pas masqués par le filtrage de portée des PAT classiques, donc ces outils peuvent encore apparaître même lorsque 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 à un dépôt, le jeton doit également avoir accès à chaque dépôt référencé, sinon l'espace peut être traité comme introuvable.
get_copilot_space - Obtenir un espace Copilot
owner : Le propriétaire de l'espace. (chaîne, requis)
name : Le nom de l'espace. (chaîne, requis)
list_copilot_spaces - Lister les espaces Copilot
Recherche dans la documentation de support GitHub
- **github_support_docs_search** - Récupère la documentation pertinente pour répondre aux questions sur les produits et le support GitHub. Les sujets de support incluent : les workflows GitHub Actions, l'authentification, les demandes d'assistance GitHub, les pratiques de pull request, la maintenance de dépôt, GitHub Pages, GitHub Packages, GitHub Discussions, Copilot Spaces
- `query` : Saisie de l'utilisateur concernant la question à laquelle il doit répondre. Il s'agit du dernier message utilisateur brut non modifié. Vous devez TOUJOURS laisser le message utilisateur tel quel, vous ne devez jamais le modifier. (chaîne, obligatoire)
Mode lecture seule
Pour exécuter le serveur en mode lecture seule, vous pouvez utiliser le drapeau --read-only. Cela n'offrira que des outils en lecture seule, empêchant toute modification des dépôts, des issues, des pull requests, etc.
./github-mcp-server --read-only
Lors de l'utilisation de Docker, vous pouvez passer le mode lecture seule en tant que variable d'environnement :
Le mode verrouillage limite le contenu que le serveur exposera à partir des dépôts publics. Lorsqu'il est activé, le serveur vérifie si l'auteur de chaque élément a un accès en écriture 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.
./github-mcp-server --lockdown-mode
Lors de l'exécution avec Docker, définissez la variable d'environnement correspondante :
Le comportement du mode verrouillage dépend de l'outil invoqué.
Les outils suivants renverront une erreur lorsque l'auteur n'a pas l'accès en écriture :
issue_read:get
pull_request_read:get
Les outils suivants filtreront le contenu des utilisateurs n'ayant pas l'accès en écriture :
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 d'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
le drapeau --export-translations.
Ce drapeau conservera toutes les traductions/remplacements que vous avez effectués, tout en ajoutant
toute nouvelle traduction qui a été ajoutée au binaire depuis la dernière fois que vous avez
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 dans le 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. Ceci est utile lors de l'exécution
de plusieurs instances du serveur GitHub MCP (par exemple, une pour github.com et une pour
GitHub Enterprise Server) afin que les agents puissent les distinguer.
Clé
Variable d'environnement
Valeur par 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 modifications cassantes. À l'avenir, nous pourrons offrir une stabilité ; veuillez ouvrir une issue s'il existe un cas d'utilisation où cela serait précieux.
Contribution
Les contributions sont les bienvenues. Avant d'ouvrir une pull request, veuillez lire le guide de contribution pour les instructions de configuration, de test, de linting et de génération de documentation.
Support
Pour obtenir de l'aide sur l'utilisation du serveur GitHub MCP, consultez le guide de support. Si vous avez trouvé un bug ou souhaitez demander une fonctionnalité, veuillez rechercher parmi les issues existantes avant d'en ouvrir une nouvelle.
Sécurité
Veuillez ne pas signaler les vulnérabilités de sécurité via les issues publiques. 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 open source MIT. Veuillez vous référer à MIT pour les termes complets.