Fonctionnement
La plupart des clients MCP gèrent ce flux automatiquement. Il vous suffit de cliquer sur « Authorize » quand cela vous est demandé : aucune équipe à choisir, aucun jeton à gérer à la main. La connexion est rattachée à l’utilisateur : elle peut lire chaque workspace éligible au MCP auquel vous avez accès directement ou par héritage depuis une équipe parente.
Points de terminaison OAuth
Scopes disponibles
Ne demandez que les scopes nécessaires :Si aucun scope n’est précisé, tous les scopes de lecture sont accordés par défaut. Si l’un des scopes demandés n’est pas reconnu, toute la demande d’autorisation est rejetée avec
invalid_scope.read:measure et read:pitch-audits sont des scopes plus récents. Les connexions OAuth existantes doivent se reconnecter et autoriser à nouveau l’accès pour utiliser leurs outils. Les scopes d’un jeton déjà émis ne sont jamais étendus en silence.Cycle de vie des jetons
Le flux OAuth émet un unique jeton d’accès rattaché à l’utilisateur : le même type de jeton qu’un jeton d’accès personnel (qw-usr-). Il est durable et n’a pas de jeton de rafraîchissement : rien à faire tourner, les clients réutilisent simplement le bearer jusqu’à sa révocation.
Les nouvelles connexions OAuth émettent un jeton
qw-usr- durable, sans jeton de rafraîchissement. Déconnecter puis reconnecter une ancienne connexion la fait passer à ce flux actuel.
Jetons d’accès personnels
Pour les clients headless qui ne peuvent pas mener un flux OAuth interactif (plateformes d’automatisation comme n8n ou Make, scripts, agents sur mesure), Qwairy propose des jetons d’accès personnels rattachés à l’utilisateur. Créez-les et révoquez-les depuis Gestion de l’équipe > Serveur MCP dans Qwairy.- Un jeton personnel commence par
qw-usr-et est lié à votre compte utilisateur, pas à une seule équipe. - Il peut lire chaque équipe éligible au MCP à laquelle vous avez accès directement ou par héritage depuis une équipe parente : un seul jeton peut donc couvrir plusieurs workspaces.
- Transmettez-le comme jeton bearer :
Authorization: Bearer qw-usr-.... - Comme le jeton d’accès OAuth, un jeton personnel n’a pas d’expiration fixe. Révoquez-le depuis Gestion de l’équipe > Serveur MCP quand vous n’en avez plus besoin.
Les jetons personnels sont en lecture seule, comme tout accès MCP à Qwairy : ils n’exposent jamais d’opération d’écriture.
Choisir une équipe
Les outils liés à une marque prennent unbrandId, et Qwairy rattache cette marque à une seule équipe propriétaire pour l’appel. Une réponse n’agrège jamais les données de marques de plusieurs équipes. Appelez d’abord list_brands, puis passez le brandId voulu.
Les jetons rattachés à l’utilisateur peuvent couvrir les équipes accessibles directement et les sous-équipes héritées via un rôle Propriétaire ou Manager sur une équipe parente. list_pitch_audits est l’autre outil de découverte multi-workspaces : il ne liste que les workspaces agence accessibles au jeton et accepte un filtre teamId facultatif. Les appels de détail résolvent toujours un seul audit dans un seul workspace autorisé.
Prise en charge de PKCE
Le serveur exige PKCE avec la seule méthode S256 :- S256 : hachage SHA-256 du code verifier
plain n’est pas prise en charge. La plupart des clients MCP utilisent S256 par défaut, aucune configuration supplémentaire n’est donc nécessaire.
Sécurité
Aucun partage de mot de passe
Aucun partage de mot de passe
Votre mot de passe Qwairy n’est jamais transmis à un client IA. L’authentification se fait directement auprès du serveur d’authentification de Qwairy.
Accès limité par scopes
Accès limité par scopes
Les jetons sont limités à des types de données précis. Un client MCP n’accède qu’à ce que vous avez autorisé.
Isolation des équipes
Isolation des équipes
Les connexions OAuth comme les jetons d’accès personnels sont rattachés à l’utilisateur (
qw-usr-) : ils couvrent les équipes éligibles au MCP auxquelles vous avez accès directement ou par héritage d’un rôle Propriétaire ou Manager sur l’équipe parente. Chaque appel lié à une marque rattache toutefois le brandId demandé à une seule équipe propriétaire, si bien qu’une réponse ne mélange jamais les données de marques de plusieurs équipes.Code d’autorisation à durée courte
Code d’autorisation à durée courte
Le code d’autorisation est à usage unique et expire au bout de 5 minutes : la fenêtre pour l’échanger contre un jeton est donc étroite. Le jeton d’accès émis reste révocable à tout moment (voir ci-dessous).
Révocation
Révocation
Vous pouvez révoquer l’accès à tout moment depuis Gestion de l’équipe > Serveur MCP dans Qwairy.
Échange manuel du jeton
Si vous développez votre propre client MCP, enregistrez d’abord le client public, puis réutilisez leclient_id renvoyé tout au long de l’échange du code d’autorisation.
1. Enregistrer le client
L’URI de redirection enregistrée ici doit être identique dans les deux requêtes suivantes.2. Lancer l’autorisation
Générez un verifier RFC 7636 et son challenge S256, puis ouvrez cette URL dans le navigateur de l’utilisateur. RemplacezREGISTERED_CLIENT_ID par le client_id renvoyé ci-dessus.
code et state. Vérifiez state avant d’échanger le code.
3. Échanger le code
qw-usr-). Il n’y a ni refresh_token ni expires_in : réutilisez le bearer jusqu’à sa révocation.

