Les tokens MCP (Model Context Protocol) sont distincts des clés API classiques : ils sont émis spécifiquement pour des agents IA autonomes (Claude Desktop, Cursor, Cline, etc.) et tracés dans la table coffrify_mcp_tokens. Ils partagent le même catalogue de scopes et les mêmes mécanismes d'expiration et de liste blanche IP que les clés API, mais leurs flux d'audit, d'activité et de révocation sont isolés pour ne pas polluer les logs de vos intégrations serveur.
/v1/mcp/tokensListe tous les tokens MCP actifs et révoqués du workspace, triés par date de création décroissante.POST/v1/mcp/tokensCrée un nouveau token MCP. Le secret brut est retourné une seule fois dans la réponse./v1/mcp/tokens/{id}Modifie un token existant (nom, description, scopes, liste IP, activation/désactivation)./v1/mcp/tokens/{id}Révoque définitivement un token MCP avec une raison optionnelle.POST/v1/mcp/tokens/{id}/rotateRévoque le token existant après une fenêtre de grâce et émet un token de remplacement avec les mêmes paramètres.Authentification
Toutes les opérations sur les tokens MCP requièrent le scope api_keys:manage. Transmettez votre clé API dans l'en-tête Authorization: Bearer cof_live_… ou Authorization: Bearer cof_test_…. Sans ce scope, l'API renvoie 403 scope_missing.
Corps de la requête, POST /v1/mcp/tokens
| Champ | Type | Requis | Description |
|---|---|---|---|
| name | string | Oui | Nom lisible du token (ex. : "Agent fiscal Q1"). |
| description | string | Non | Note interne libre. |
| scopes | string[] | Non | Liste de scopes accordés. Défaut : ["transfers:read"]. Au moins un scope requis. |
| environment | string | Non | Environnement cible : "live" (défaut) ou "test". Détermine le préfixe cof_mcp_live_… / cof_mcp_test_…. |
| client_hint | string | Non | Client MCP ciblé. Valeurs autorisées : claude-desktop, claude, cursor, cline, continue, custom. |
| expires_in_days | number | Non | Durée de validité en jours. Si absent, le token n'expire pas. |
| allowed_ips | string[] | Non | CIDR ou IP autorisés. Si absent, aucune restriction IP. |
| max_uses | number | Non | Nombre maximal d'utilisations avant invalidation automatique. |
Corps de la requête, PATCH /v1/mcp/tokens/{id}
| Champ | Type | Requis | Description |
|---|---|---|---|
| name | string | Non | Nouveau nom du token. |
| description | string | null | Non | Nouvelle description (passer null pour l'effacer). |
| is_active | boolean | Non | Désactiver (false) ou réactiver (true) sans révoquer définitivement. |
| scopes | string[] | Non | Remplace la liste de scopes. Au moins un scope requis. |
| allowed_ips | string[] | Non | Remplace la liste blanche IP. |
Exemples d'appel
Réponse
La création (POST) retourne un HTTP 201 avec le token brut dans le champ token. Ce champ n'est exposé qu'une seule fois. Seul le préfixe (ex. : cof_mcp_live_3a7f9b2c...) est conservé en base pour identification.
La rotation (POST /v1/mcp/tokens/{id}/rotate) retourne également un HTTP 201 avec la structure suivante :
Erreurs
| HTTP | Code | Quand | Résolution |
|---|---|---|---|
| 400 | validation_error | name absent au POST, scopes vide, client_hint invalide, reason de révocation dépassant 200 caractères, PATCH sans champ valide. | Vérifiez la présence du champ name, que scopes contient au moins un élément et que client_hint appartient aux valeurs autorisées. |
| 401 | missing_api_key / invalid_api_key | En-tête Authorization absent ou clé inconnue. | Passez votre clé API dans Authorization: Bearer cof_live_…. |
| 403 | scope_missing | La clé appelante ne possède pas le scope api_keys:manage. | Émettez une clé disposant du scope api_keys:manage. |
| 404 | not_found | L'id du token ne correspond à aucun enregistrement dans le workspace. | Vérifiez l'id retourné lors de la création. |
| 422 | validation_error | Tentative de rotation sur un token déjà révoqué. | Créez directement un nouveau token via POST. |
| 500 | internal_error | Erreur base de données inattendue. | Réessayez ; si l'erreur persiste, contactez le support Coffrify. |
Bonnes pratiques
Voir aussi
- Créer une clé API
- Comprendre les scopes de l'API Coffrify
- Configurer un serveur MCP Coffrify
- Révoquer une clé API
- Événements webhook liés aux clés