Glen

officiel

Serveur MCP de mémoire d’agent pour les équipes. Recherchez les décisions et correctifs passés dans la mémoire partagée des agents de codage de votre équipe (Claude Code, Codex, Cursor), avec leurs sources, et utilisez ou enregistrez les compétences et la documentation de l’équipe.

Que pouvez-vous faire avec Glen MCP ?

  • Rechercher dans la mémoire de l’équipe — Posez une question à la mémoire de l’organisation et obtenez des réponses tirées de ce que vous pouvez déjà consulter dans Glen.
  • Découvrir pourquoi du code existe — Recherchez les raisons derrière un morceau de code précis.
  • Exécuter une compétence enregistrée — Récupérez les instructions Markdown d’une compétence de l’équipe à l’aide de son slug afin que l’agent puisse les suivre.
  • Enregistrer et partager des compétences ou des documents — Stockez une compétence ou un artefact Markdown/HTML en privé, ou partagez-le avec toute l’organisation.
  • Corriger un souvenir — Oubliez un souvenir erroné ou obsolète et restaurez-le plus tard si nécessaire.
  • Importer des conversations passées — Ajoutez des sessions antérieures de l’agent à la mémoire de l’équipe lorsque vous le demandez.

Serveur MCP hébergé

npx add-mcp 'https://mcp.tryglen.com/mcp'

S’installe dans Claude Code, Codex, Cursor et plus

Documentation

Un seul endpoint pour la mémoire des agents de votre équipe, depuis n’importe quel client MCP.

Le serveur MCP distant de Glen met à la disposition d’un client la mémoire, les compétences et les documents enregistrés de l’organisation sous forme de 22 outils. Cette page présente l’endpoint, les deux méthodes d’authentification, les entrées et sorties de chaque outil, les indications que les clients utilisent pour déterminer les questions à poser, ainsi que les limites.

URL du serveurhttps://mcp.tryglen.com/mcp
TransportHTTP en flux continu (POST, GET et DELETE sur /mcp)
AuthentificationOAuth 2.1 avec enregistrement dynamique du client, ou clé API personnelle
Outils22, chacun avec un titre et des indications de comportement
Délai maximal d’une requête60 secondes
Taille maximale d’une requête4.5 MB par requête

L’endpoint

https://mcp.tryglen.com/mcp

Connectez-vous exactement à https://mcp.tryglen.com/mcp. Les jetons OAuth sont émis pour cette URL en tant qu’audience, et les clients MCP rejettent un serveur dont les métadonnées en indiquent une autre. https://app.tryglen.com/mcp y redirige de façon permanente, et tout autre chemin sur mcp.tryglen.com, à l’exception des documents de découverte OAuth, redirige vers l’application Glen.

Le serveur utilise HTTP en flux continu : le client envoie des messages JSON-RPC par POST à /mcp, peut ouvrir un flux GET pour recevoir les messages du serveur et envoie une requête DELETE pour mettre fin à sa session.

Authentification

Chaque requête est authentifiée de l’une de ces deux façons, et dans les deux cas, elle correspond à une même personne dans une même organisation.

OAuth, pour les clients de chat et la plupart des clients MCP

  1. 01 Le client appelle https://mcp.tryglen.com/mcp sans jeton et reçoit 401 Unauthorized avec WWW-Authenticate: Bearer resource_metadata="https://mcp.tryglen.com/.well-known/oauth-protected-resource/mcp" et les portées openid profile email read:organization offline_access.
  2. 02 Les métadonnées de la ressource protégée indiquent le serveur d’autorisation, https://app.tryglen.com/api/auth, dont les métadonnées se trouvent à /.well-known/oauth-authorization-server.
  3. 03 Le client s’enregistre par le biais de l’enregistrement dynamique du client. Aucun préenregistrement ni secret client n’est nécessaire ; les URI de redirection en boucle locale (http://127.0.0.1) sont acceptées pour les clients de bureau et CLI.
  4. 04 L’utilisateur suit le flux du code d’autorisation avec PKCE : la page de connexion de Glen, puis un sélecteur d’organisation s’il appartient à plusieurs organisations, puis la page de consentement.
  5. 05 Le client reçoit un jeton d’accès signé (émetteur https://app.tryglen.com/api/auth, audience https://mcp.tryglen.com/mcp) et, parce que offline_access est accordée, un jeton d’actualisation. Le jeton contient l’organisation choisie dans la revendication https://app.tryglen.com/org_id.

Un jeton reste associé à l’organisation choisie lors de la connexion. Pour utiliser une autre organisation, déconnectez-vous puis reconnectez-vous ; glen_list_orgs indique celle utilisée par la connexion.

Clé API, pour les scripts et la CLI glen

Créez une clé dans Paramètres → Clés API du tableau de bord Glen. Les clés sont personnelles : elles vous appartiennent, et non à une organisation, et fonctionnent dans toutes les organisations auxquelles vous appartenez. Chaque requête indique l’organisation dans un en-tête :

POST /mcp HTTP/1.1
Host: mcp.tryglen.com
x-api-key: <your key>
x-glen-org-id: <organization id>

Sans x-glen-org-id, le serveur répond 401 avec no active organization: run `glen org switch`. Add x-glen-incognito: true pour effectuer une requête sans enregistrement. Lorsqu’une requête contient à la fois une clé API et un jeton bearer, c’est la clé qui est vérifiée.

Vérification à chaque requête

Avant l’exécution de tout outil, le serveur vérifie que l’utilisateur existe toujours et qu’il est toujours membre de l’organisation. Le retrait d’une personne de l’organisation ou la suppression de son compte invalide ses jetons et ses clés dès sa prochaine requête, sans attendre leur expiration. En cas d’échec, le serveur renvoie 401 avec le même en-tête WWW-Authenticate, afin que le client puisse relancer l’authentification.

Outils

Chaque outil prend un objet JSON et renvoie son résultat sous forme de texte JSON. Les outils de lecture agissent en votre nom : ils ne renvoient que les informations que vous pouvez déjà consulter dans le tableau de bord Glen, pour l’organisation connectée. Les outils d’écriture ne modifient que votre compte, le contenu que vous avez créé ou la mémoire de l’organisation en votre nom.

Recherche et rappel

Posez une question sur la mémoire de l’organisation ou demandez pourquoi un élément de code précis existe.

Compétences

Les compétences sont des instructions Markdown, avec éventuellement des fichiers, que l’équipe enregistre une fois et que n’importe quel agent peut exécuter. Elles restent privées pour leur auteur jusqu’à ce qu’elles soient partagées.

Utiliser une compétence

Lecture seule

glen_skill_use

Récupère les instructions d’une compétence à partir de son slug afin que l’agent puisse les suivre.

slug

(string)

Le slug exact provenant de glen_skill_search.

conversationId

(string, optional)

L’identifiant de la session appelante, pour le décompte des utilisations.

cached

(object, optional)

Les compétences que le client possède déjà (slug associé à la date de dernière mise à jour), afin de ne pas renvoyer celles qui sont déjà référencées.

Renvoie : les instructions Markdown de la compétence sous forme de contenu, ses fichiers et les compétences auxquelles elle fait référence que le client ne possède pas déjà.

limite de débit : 600 appels par minute et par utilisateur

Enregistrer une compétence

ÉcritureNécessite un plan avec recherche

glen_skill_create

Enregistre une compétence Markdown dans votre bibliothèque, privée jusqu’à ce que vous la partagiez.

name

(string, up to 120)

Nom de la compétence ; le slug est généré à partir de celui-ci.

description

(string, up to 500)

Une ligne indiquant quand l’utiliser.

content

(string, up to 1 MB)

Le contenu du fichier SKILL.md.

files

(array, up to 100, optional)

Scripts, références ou ressources, chacun avec un chemin et un type de contenu.

dependencies

(array, optional)

Identifiants de dépendances existantes, ou nouvelles dépendances (name, description, sourceUrl, kind).

org

(boolean, optional)

true partage la compétence avec toute l’organisation.

update

(boolean, optional)

true remplace votre compétence portant le même nom.

Renvoie : le slug, si une compétence existante a été mise à jour et si elle est partagée avec l’organisation.

limite de débit : 600 appels par minute et par utilisateur

Supprimer une compétence

Suppression

glen_skill_delete

Supprime définitivement une compétence que vous avez créée. Uniquement à votre demande.

slug

(string)

Une compétence que vous avez créée. Elle est supprimée pour toutes les personnes avec qui elle était partagée.

Renvoie : une confirmation de la suppression de la compétence.

limite de débit : 600 appels par minute et par utilisateur

Artefacts

Les artefacts sont des documents enregistrés (Markdown, ou HTML et CSS sans JavaScript). Ils restent privés pour leur auteur jusqu’à ce qu’ils soient partagés.

Récupérer un artefact

Lecture seule

glen_artifact_get

Récupère un document enregistré à partir de son slug.

slug

(string)

Le slug exact.

Renvoie : le slug, le titre, le format, le contenu intégral, un résumé et l’auteur.

limite de débit : 600 appels par minute et par utilisateur

Enregistrer un artefact

Écriture

glen_artifact_create

Enregistre un document Markdown ou HTML dans votre bibliothèque, privé jusqu’à ce que vous le partagiez.

title

(string, up to 200)

Titre du document ; le slug est généré à partir de celui-ci.

format

(markdown or html)

Le HTML peut inclure du CSS, mais pas de JavaScript.

content

(string, up to 200,000 characters)

Le document.

shareWithOrg

(boolean, optional)

true partage le document avec toute l’organisation.

update

(boolean, optional)

true remplace votre document portant le même titre.

Renvoie : le slug, si un document existant a été mis à jour et s’il est partagé avec l’organisation.

limite de débit : 30 appels par minute et par utilisateur

Supprimer un artefact

Suppression

glen_artifact_delete

Supprime définitivement un document que vous avez créé. Uniquement à votre demande.

slug

(string)

Un document que vous avez créé.

Renvoie : une confirmation de la suppression du document.

limite de débit : 600 appels par minute et par utilisateur

Corrections et importations de mémoire

Préservez l’exactitude du rappel en oubliant les souvenirs erronés, en les restaurant ou en ajoutant d’anciennes conversations d’agent.

Importer une ancienne conversation

Écriture

glen_import

Ajoute une ancienne conversation d’agent à la mémoire de l’équipe, à votre demande.

conversationId

(string)

import:<session id>, identique pour tous les tours d’une même session.

idempotencyKey

(string)

<conversationId>:<turn index>, afin qu’une nouvelle exécution ignore les tours déjà importés.

messages

(array (1 to 100))

Le message de l’utilisateur et la réponse du tour, chacun avec un rôle, un contenu et sa date occurredAt d’origine.

additionalContext

(object, optional)

Le nom de l’agent et l’espace de travail (cwd, branch, repoName, remoteUrl).

Renvoie : si le tour a été enregistré ou avait déjà été importé, et le nombre de messages ajoutés.

limite de débit : 600 appels par minute et par utilisateur

Oublier des éléments probants

Écriture

glen_forget

Empêche qu’un souvenir erroné ou obsolète soit rappelé à nouveau. Peut être annulé avec glen_restore.

references

(string[] (1 to 50))

Références observation:<id> ou message:<id> provenant des sources de recherche.

Renvoie : les références oubliées, celles qui l’étaient déjà et le nombre de souvenirs masqués parce que tous les messages qui les étayaient ont été oubliés.

limite de débit : 600 appels par minute et par utilisateur

Restaurer des éléments probants oubliés

Écriture

glen_restore

Restaure un souvenir qui avait été oublié.

references

(string[] (1 to 50))

Références précédemment oubliées.

Renvoie : les références restaurées, celles qui n’ont nécessité aucun changement et le nombre de souvenirs masqués qui ont été rétablis.

limite de débit : 600 appels par minute et par utilisateur

Paramètres et organisation

Consultez et modifiez vos propres paramètres Glen, affichez vos organisations, invitez des personnes et envoyez des commentaires.

Lister les organisations

Lecture seule

glen_list_orgs

Liste les organisations auxquelles vous appartenez et indique celle utilisée par cette connexion.

Aucune entrée.

Renvoie : vos organisations, avec active: true pour celle utilisée par cette connexion.

limite de débit : 600 appels par minute et par utilisateur

Afficher les paramètres Glen

Lecture seule

glen_status

Affiche votre mode d’enregistrement et indique si les suggestions de compétences sont activées.

Aucune entrée.

Renvoie : votre mode Glen (on, off, incognito ou silent) et indique si les suggestions de compétences sont activées.

limite de débit : 600 appels par minute et par utilisateur

Inviter des collègues

ÉcritureRéservé aux propriétaires et aux administrateurs

glen_invite

Invite des personnes par e-mail dans votre organisation. Réservé aux propriétaires et aux administrateurs.

emails

(string[] (1 to 50))

Personnes à inviter.

role

(member or admin)

La valeur par défaut est member. L’outil ne peut pas créer de propriétaires.

Renvoie : invited, alreadyMember et failed (avec une raison pour chaque échec), ainsi qu’une note lorsque de nouveaux sièges sont facturés.

limite de débit : 600 appels par minute et par utilisateur

Définir le mode Glen

Écriture

glen_set_recording

Bascule votre compte entre les modes on, off, incognito et silent.

mode

(on, off, incognito or silent)

S’applique à votre compte sur chaque machine et dans chaque agent.

Renvoie : le mode enregistré et la date de sa modification.

limite de débit : 600 appels par minute et par utilisateur

Définir les suggestions de compétences

Écriture

glen_set_suggestions

Active ou désactive les propositions de Glen visant à enregistrer ou réutiliser des compétences.

skillCreation

(boolean, optional)

Propose d’enregistrer le travail terminé sous forme de nouvelle compétence.

skillUse

(boolean, optional)

Propose des compétences existantes adaptées à la tâche.

Renvoie : les paramètres enregistrés.

limite de débit : 600 appels par minute et par utilisateur

Indications de comportement

Chaque outil déclare les quatre indications de comportement MCP et un titre. Les clients les consultent pour décider quoi afficher et quoi demander : un client peut exécuter les outils en lecture seule sans demander de confirmation et demander avant toute opération d’écriture ; l’annuaire de connecteurs d’Anthropic classe également les outils comme étant en lecture seule ou en écriture selon ces indications.

readOnlyHint

true lorsque l’outil ne modifie jamais rien. Neuf outils : recherche, recherche de code, recherche et utilisation de compétences, recherche de dépendances, recherche et récupération d’artefacts, liste des organisations et état.

destructiveHint

true lorsqu’un appel peut remplacer, supprimer ou masquer quelque chose, ou modifier les personnes qui peuvent le voir : enregistrer une compétence ou un artefact (update: true remplace le vôtre), partager, supprimer et oublier.

idempotentHint

true lorsque répéter un appel avec les mêmes arguments n’a aucun effet supplémentaire. false pour l’enregistrement d’une compétence ou d’un artefact, l’invitation de personnes et l’envoi de commentaires.

openWorldHint

true pour chaque outil d’écriture, car ses effets dépassent le cadre de la conversation : les collègues voient les compétences partagées et les souvenirs rappelés, les invitations envoient des e-mails et les paramètres s’appliquent sur chaque machine. false pour chaque outil en lecture seule.

ToolreadOnlydestructiveidempotentopenWorld
glen_searchtruefalsetruefalse
glen_code_searchtruefalsetruefalse
glen_skill_searchtruefalsetruefalse
glen_skill_usetruefalsetruefalse
glen_artifact_searchtruefalsetruefalse
glen_artifact_gettruefalsetruefalse
glen_dependency_searchtruefalsetruefalse
glen_list_orgstruefalsetruefalse
glen_statustruefalsetruefalse
glen_skill_createfalsetruefalsetrue
glen_skill_sharefalsetruetruetrue
glen_artifact_createfalsetruefalsetrue
glen_artifact_sharefalsetruetruetrue
glen_importfalsefalsetruetrue
glen_forgetfalsetruetruetrue
glen_restorefalsefalsetruetrue
glen_invitefalsefalsefalsetrue
glen_set_recordingfalsefalsetruetrue
glen_set_suggestionsfalsefalsetruetrue
glen_feedbackfalsefalsefalsetrue
glen_skill_deletefalsetruetruetrue
glen_artifact_deletefalsetruetruetrue

Limites et erreurs

Limites de débit

Les limites sont comptabilisées par utilisateur et par outil. En cas de dépassement, l’outil renvoie une erreur telle que Too many requests. Try again in 20s.

  • 60 appels par minute : glen_search, glen_code_search, glen_skill_search, glen_artifact_search.
  • 30 appels par minute : glen_artifact_create, qui enregistre un résumé de chaque document.
  • 10 appels par heure : glen_feedback.
  • 600 appels par minute : tous les autres outils.

Limites de taille

  • Le corps d’une requête peut atteindre 4.5 MB, et une requête peut s’exécuter pendant 60 secondes au maximum.
  • Le contenu d’une compétence peut atteindre 1 MB, avec jusqu’à 100 fichiers.
  • Un artefact peut contenir jusqu’à 200,000 caractères.
  • glen_import accepte jusqu’à 100 messages par appel, chacun pouvant contenir jusqu’à 100,000 caractères.

Forfaits

Tous les outils fonctionnent avec le forfait Free, qui peut contenir jusqu’à 15,000 souvenirs. Un espace de travail sans forfait, ou dont le dernier paiement a échoué, peut toujours se connecter et utiliser les outils qui n’effectuent pas de recherche, mais les outils suivants renvoient une erreur :

glen_search, glen_code_search, glen_skill_search, glen_dependency_search, glen_skill_create, glen_artifact_search

L’erreur indique le problème et qui peut le résoudre, par exemple This workspace has no plan. An owner can choose one in Billing. glen_import est refusé de la même manière lorsque l’enregistrement est en pause. Les erreurs des outils ne contiennent jamais de liens ni de proposition d’achat.

Autres erreurs

  • 401 sur la requête HTTP : absence d’identifiants, jeton ou clé expiré ou invalide, ou utilisateur qui n’est plus membre. Le client se reconnecte.
  • Une erreur d’outil avec un message de validation : une entrée ne correspond pas au schéma de l’outil. Le message indique le champ concerné.
  • Une erreur d’outil indiquant que l’action n’est pas autorisée : glen_invite lancé par une personne qui n’est ni propriétaire ni administrateur, ou suppression d’une compétence ou d’un document que vous n’avez pas créé.
  • Une erreur d’outil indiquant qu’un élément est introuvable : un slug inexistant ou auquel vous n’avez pas accès.

Connexion d’un client

Claude et ChatGPT ont leurs propres guides pas à pas : Glen pour Claude et Glen pour ChatGPT. Tout autre client prenant en charge les serveurs MCP distants avec OAuth n’a besoin que de l’URL.

Claude Code

claude mcp add --transport http glen https://mcp.tryglen.com/mcp

Cursor et clients qui lisent mcp.json

{
  "mcpServers": {
    "glen": {
      "url": "https://mcp.tryglen.com/mcp"
    }
  }
}

Le client ouvre la page de connexion de Glen lors de sa première connexion. Pour un agent de programmation, le plugin glen est généralement plus adapté : il enregistre les sessions dans la mémoire de l’équipe et, lorsque l’agent le permet, les rappelle à chaque tour. Les plugins accèdent à Glen via la CLI glen et des hooks plutôt que par ces outils ; consultez Glen pour Cursor et Glen pour pi.