blog.vfg.lol

Brancher le GitHub MCP distant dans Cursor

Configurer api.githubcopilot.com/mcp/, garder ses autres serveurs MCP, fumer avec une liste de PR — sans jamais committer le PAT

Le point essentiel en une phrase

Pour que Cursor parle à GitHub via MCP, pointe l’entrée github de ~/.cursor/mcp.json vers https://api.githubcopilot.com/mcp/ avec un PAT dans l’en-tête Authorization — et laisse les autres serveurs MCP intacts.

Le dépôt open source github/github-mcp-server sert de référence (clone local optionnel). Le chemin opérationnel dans Cursor aujourd’hui, c’est le endpoint distant Copilot MCP, pas un binaire lancé à la main.

Cursor
  └─ ~/.cursor/mcp.json
       ├─ github  →  https://api.githubcopilot.com/mcp/  (+ Authorization)
       ├─ vfg-docs / vfg-feed / vfg-gate  →  (inchangés)
       └─ …

Pourquoi ce guide

Le 2 octobre 2026, sur le chantier Jah Messenger, on a branché GitHub MCP dans Cursor pour que les agents puissent lister des PR, lire des checks et fumer l’auth sans coller le PAT dans le dépôt.

Résultat mesuré la même matinée :

ContrôleRésultat
Clone local github-mcp-serverprésent sous D:\GitRepos\github-mcp-server
URL MCP githubhttps://api.githubcopilot.com/mcp/
Serveurs VFGtoujours listés à côté de github
Smoke get_mecompte GitHub authentifié
Smoke list_pull_requestsPR ouvertes JahMessenger visibles, dont #199 et #198

Aucun merge n’a été fait. C’est volontaire : brancher l’outil ≠ avancer le train produit.

Prérequis

  • Cursor récent sur Windows ;
  • un Personal Access Token GitHub avec les scopes nécessaires aux outils que tu veux appeler ;
  • le fichier %USERPROFILE%\.cursor\mcp.json déjà utilisé (ou à créer) ;
  • éventuellement un clone de github/github-mcp-server pour lire le README — pas obligatoire pour le chemin remote.

Étape 1 — (optionnel) Cloner le serveur pour référence

cd D:\GitRepos
git clone https://github.com/github/github-mcp-server.git

Tu peux y lire l’architecture et les outils exposés. Pour Cursor en remote Copilot MCP, tu n’as pas besoin de démarrer ce serveur toi-même.

Étape 2 — Éditer mcp.json sans écraser le reste

Ouvre :

%USERPROFILE%\.cursor\mcp.json

Ajoute ou mets à jour uniquement l’entrée github. Exemple de forme (le secret n’est pas recopié ici) :

{
  "mcpServers": {
    "github": {
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer <TON_PAT>"
      }
    }
  }
}

Si tu as déjà vfg-docs, vfg-feed, vfg-gate (ou d’autres), ne les efface pas. Fusionne : une clé de plus, pas un fichier entier remplacé.

Étape 3 — Redémarrer les MCP dans Cursor

Après sauvegarde : recharger la fenêtre Cursor, ou désactiver/réactiver le serveur github dans les réglages MCP, jusqu’à voir le namespace user-github (ou équivalent) côté outils.

Étape 4 — Smoke minimal (preuve, pas confiance)

Deux gestes suffisent :

  1. Identité — outil du type get_me : tu dois voir ton login GitHub.
  2. Liste — list_pull_requests sur un dépôt que tu connais (ex. propriétaire + JahMessenger, état open) : tu dois reconnaître des numéros réels (#199, #198, …).

Si la liste est vide alors que tu sais qu’il y a des PR ouvertes : ce n’est pas « pas de PR » — rejoue, vérifie le PAT, l’URL, et le redémarrage MCP (leçon VFG : un « 0 » silencieux n’est pas une mesure).

Garde-fous non négociables

  1. Jamais committer le PAT — ni dans le dépôt produit, ni dans un handoff, ni dans un article.
  2. mcp.json reste hors git (profil utilisateur) — ne le copie pas dans le repo « pour faciliter ».
  3. Brancher ≠ merger — un smoke qui liste #199 et #198 ne donne pas le droit de fusionner sans go humain.
  4. Préserve les autres MCP — un replace aveugle de mcp.json casse le reste du workspace (docs, gate, feed).

Ce que ça débloque pour un agent

Une fois fumé, l’agent peut :

  • lire l’état des PR et des checks ;
  • commenter / ouvrir une PR si le mandat de session le demande ;
  • croiser GitHub avec le reste du stack MCP VFG dans la même session Cursor.

Ce qu’il ne doit pas faire « parce que l’outil marche » : pousser un secret, merger le train en pause, ou inventer un lot produit là où il n’y en a pas.

Relais

Si tu reprends après cette config : fume get_me + une liste de PR connues, puis enchaîne le chantier produit (mesure live, handoff, etc.) sans re-planifier le branchement MCP.

source markdown

Concepts de cet article

MCPhandoffgate

Partage le plus de concepts avec