ConnecterConnecterCopilot CLI

MCP Client

Copilot CLI

Configurez le client MCP direct à jeton porteur Copilot CLI avec XMEMO_KEY et une attribution d'instance stable.

Prérequis

Utilisez GitHub Copilot CLI avec sa prise en charge de la configuration MCP. Cet itinéraire est intentionnellement séparé de l'itinéraire OAuth de VS Code / GitHub Copilot Chat. Copilot CLI prend en charge les en-têtes HTTP personnalisés dans ~/.copilot/mcp-config.json ou la connectivité proxy locale via memory-os-cli.

  • Point de terminaison : https://xmemo.dev/mcp.
  • Transport : Streamable HTTP (type: "http" dans la configuration) ou proxy local (xmemo mcp proxy).
  • Mode d'authentification : appliquez Authorization via l'interface utilisateur/CLI MCP officielle de Copilot ou une référence de secret prise en charge ; ne présumez pas de l'expansion des variables d'environnement (${env:…}) dans les valeurs d'en-tête.
  • Fichier de configuration : ~/.copilot/mcp-config.json.
  • État de préparation : l'expansion directe des variables d'environnement dans les en-têtes de Copilot CLI est not-tested ; le chemin du proxy local est vérifié via MCP-SETUP-GUIDE.md de memory-os-cli.

Installation / configuration

Ajoutez le bloc serveur XMemo dans ~/.copilot/mcp-config.json sous mcpServers, ou passez par le proxy local memory-os-cli. Ne réutilisez pas l'entrée servers de VS Code ; Copilot CLI est un chemin client différent.

  • HTTP distant direct : ajoutez le bloc XMemo dans ~/.copilot/mcp-config.json avec type: "http", url: "https://xmemo.dev/mcp", timeout: 30000 et tools: ["*"].
  • Chemin du proxy local : exécutez xmemo setup copilot et gardez xmemo mcp proxy en cours d'exécution dans un terminal en arrière-plan (ancré à MCP-SETUP-GUIDE.md de memory-os-cli).
  • L'expansion directe des variables d'environnement dans les en-têtes (${env:XMEMO_KEY}) est not-tested et non prise en charge par les modèles Core.
# Local proxy path (recommended if direct remote HTTP is unsupported):
xmemo login
xmemo setup copilot
xmemo mcp proxy  # keep running in a background terminal

Définir l'identifiant

Définissez la valeur de l'en-tête Authorization à l'aide de l'interface utilisateur/CLI MCP officielle de Copilot ou d'une référence de secret prise en charge (en remplaçant <replace-with-XMEMO_KEY-or-supported-secret-reference> par votre véritable jeton). Lors de l'utilisation du proxy local, xmemo login gère automatiquement l'identifiant.

# For local proxy:
xmemo login
# For direct configuration, apply token through Copilot CLI or supported secret reference

Générer / confirmer XMEMO_AGENT_INSTANCE_ID

Générez une valeur non secrète par installation locale de Copilot CLI, conservez-la en dehors de git et réutilisez-la après chaque redémarrage afin de garantir la stabilité de l'attribution.

export XMEMO_AGENT_INSTANCE_ID='<stable-local-copilot-cli-instance-id>'
# Persist and reuse this value for the same local install

Conserver le bloc de configuration existant

Utilisez le bloc de configuration officiel de Copilot CLI XMemo correspondant au modèle de Core (mcp_config.py:267). Appliquez la valeur réelle d'Authorization via l'interface utilisateur/CLI MCP officielle de Copilot ou une référence de secret prise en charge ; ne vous fiez pas à l'expansion non vérifiée de l'en-tête ${env:XMEMO_KEY}.

{
  "mcpServers": {
    "XMemo": {
      "type": "http",
      "url": "https://xmemo.dev/mcp",
      "tools": [
        "*"
      ],
      "timeout": 30000,
      "headers": {
        "Authorization": "Bearer <replace-with-XMEMO_KEY-or-supported-secret-reference>",
        "X-Memory-OS-Agent-ID": "copilot-cli",
        "X-Memory-OS-Agent-Instance-ID": "<stable-local-copilot-cli-instance-id>"
      }
    }
  }
}

Redémarrer le client

Redémarrez Copilot CLI après avoir modifié mcp-config.json. Si vous utilisez le proxy local, assurez-vous que 'xmemo mcp proxy' reste en cours d'exécution dans un terminal en arrière-plan avant de redémarrer Copilot CLI.

Tester avec un appel de rappel (recall) réel

Effectuez le premier appel MCP en lecture seule. Il s'agit d'une véritable invocation de recall, et non d'un simple indicateur de contrôle d'état (health check) ; cette opération n'écrit aucune mémoire.

recall({ query: "connection check", limit: 1 })

Réponse attendue (format littéral)

Un appel réussi renvoie le format de texte classé public ci-dessous ; la référence et le contenu sont des valeurs réelles issues de l'espace de mémoire autorisé.

### XMemo Memory Results:
1. Reference: <opaque-memory-id> | Location: <location>
   > <memory content>

Erreurs fréquentes

Copilot CLI est un client à jeton direct ou par proxy ; les erreurs fréquentes concernent les jetons d'authentification, le cycle de vie du proxy ou l'approbation de portée.

  • 401 invalid_token — XMEMO_KEY est manquant, expiré, révoqué ou non développé : vérifiez la référence de secret active ou réexécutez xmemo login pour le proxy local.
  • 403 insufficient_scope — le jeton n'accorde pas memory:read : émettez un jeton avec la portée requise.
  • Connection refused — si vous utilisez le proxy local, vérifiez que xmemo mcp proxy est en cours d'exécution dans un terminal en arrière-plan.
  • Littéral '${env:XMEMO_KEY}' envoyé dans l'en-tête — Copilot CLI peut ne pas développer les variables d'environnement dans les valeurs d'en-tête ; utilisez la référence de secret ou le proxy local.
  • Les valeurs non valides de XMEMO_AGENT_INSTANCE_ID sont normalisées sans attribution d'instance au lieu de déclencher une erreur d'authentification.

Configuration MCP de Copilot CLI

Fichier de configuration : ~/.copilot/mcp-config.json

Direct client: set XMEMO_KEY in the user environment or a supported secret reference, then replace the stable instance placeholder before applying the reviewed config.

{
  "mcpServers": {
    "XMemo": {
      "type": "http",
      "url": "http://127.0.0.1:8765/mcp"
    }
  }
}

Disponibilité du client

  • Evidence required
  • Marketplace pending
  • See /product/docs#client-capability-matrix; the direct Copilot CLI path still needs current client evidence.

Source : Matrice des capacités du client