Letta
Connectez RepoHop avec une application hôte Letta qui gère OAuth.
Letta accepte les serveurs MCP avec Streamable HTTP. Son Agent SDK n’ouvre pas de flux OAuth interactif. L’application qui démarre la session doit gérer la connexion, le stockage et le renouvellement des jetons.
Cette configuration est destinée au développeur de l’application Letta. Ne placez pas un jeton d’accès RepoHop de courte durée dans une configuration permanente.
Avant la connexion
RepoHop Local doit être en ligne et un dépôt doit être approuvé. Laissez tous les droits sauf Read désactivés. L’application hôte a aussi besoin d’un stockage secret et d’un callback de navigateur pour OAuth.
Ajouter RepoHop
Donnez cette demande à l’agent qui gère l’application Letta :
Ajoute RepoHop à cet agent Letta. Utilise https://repohop.app/api/mcp comme serveur MCP avec Streamable HTTP. Suis la découverte OAuth du serveur et enregistre un client public via le registration_endpoint annoncé. Utilise une redirect_uri HTTPS hébergée, accessible à la fois par le navigateur de l’utilisateur et par cet hôte. N’utilise localhost ou 127.0.0.1 que si le navigateur et le listener de callback s’exécutent sur le même appareil. Utilise ensuite Authorization Code avec PKCE et les jetons de renouvellement. Ne réutilise pas un client_id codé en dur et ne demande pas à l’utilisateur d’en fournir un. Stocke l’enregistrement du client et les jetons uniquement dans le stockage secret de l’hôte. N’expose jamais les identifiants au modèle ou aux journaux. Demande projects:read projects:write projects:exec projects:publish offline_access dans la requête d’autorisation afin que RepoHop puisse proposer chaque niveau d’accès. RepoHop n’accordera que les permissions que je sélectionne. Transmets le jeton d’accès actuel à la session MCP de Letta avec l’en-tête Authorization. Ajoute uniquement les outils présents dans le périmètre accordé et appelle project_catalog. Exige à la fois le périmètre accordé et les permissions project_catalog de chaque dépôt avant d’utiliser une capacité. Ajoute une fonction de déconnexion qui révoque RepoHop et supprime tous les identifiants RepoHop stockés.La mise en place est prête lorsqu’elle termine la connexion et PKCE dans le navigateur, stocke et renouvelle les deux jetons, lance uniquement les outils de lecture et supprime les jetons lors de la déconnexion.
Consultez la documentation MCP de Letta Agent SDK.
Approuver l’accès
Connectez-vous à RepoHop dans le navigateur. Vérifiez le nom du client, choisissez le dépôt et approuvez uniquement Read. Revenez dans l’application Letta et démarrez une nouvelle session.
Tester la connexion
Demandez à l’agent Letta :
Utilise RepoHop pour lister mes dépôts approuvés. Exécute project_status pour le dépôt que je choisis, puis lis son README avec project_read. Ne modifie aucun fichier et n’exécute aucune commande.Vérifiez le résultat et confirmez qu’aucun jeton ne se trouve dans la discussion du modèle ou dans les journaux.
Autoriser les modifications
Ajoutez les outils de modification seulement après avoir activé le droit correspondant sur le dépôt et la connexion RepoHop. Vérifiez chaque changement localement. Gardez Execute, Commit et Push désactivés s’ils ne sont pas nécessaires.
Supprimer RepoHop
Révoquez la connexion dans RepoHop. Utilisez la fonction de déconnexion de l’application hôte pour retirer le serveur MCP et supprimer ses jetons. Démarrez une nouvelle session Letta et vérifiez que les outils RepoHop ne sont plus disponibles.
Ne remplacez pas un échec OAuth ou de renouvellement par un jeton permanent. Corrigez le flux hôte ou consultez le Dépannage.