Authentification
OAuth 2.1 (PKCE, DCR, refresh), audiences et scopes CoproLive MCP.
Authentification
L’accès au MCP et à l’API REST utilise OAuth 2.1 côté SaaS CoproLive (app.coprolive.com).
Flux recommandé
- Le client MCP découvre le serveur de ressources via
/.well-known/oauth-protected-resource - Enregistrement dynamique du client (DCR) si besoin :
POST /api/mcp/oauth/register - Autorisation avec PKCE :
GET/POST /api/mcp/oauth/authorize(login email / mot de passe syndic) - Échange code → tokens :
POST /api/mcp/oauth/token - Appels MCP ou REST avec
Authorization: Bearer <access_token>
Les clients conformes (ChatGPT, Claude, Cursor) gèrent ce flux automatiquement une fois l’URL MCP renseignée.
Endpoints OAuth
| Endpoint | Rôle |
|---|---|
GET /.well-known/oauth-authorization-server | Métadonnées AS (RFC 8414) |
GET /.well-known/oauth-protected-resource | Ressource protégée (RFC 9728) |
GET/POST /api/mcp/oauth/authorize | Login + code + resource |
POST /api/mcp/oauth/token | authorization_code / refresh_token + PKCE |
POST /api/mcp/oauth/register | Dynamic Client Registration |
Base issuer : https://app.coprolive.com (également exposée via le proxy www.coprolive.com pour le discovery MCP).
Access token
- JWT HS256
- Claims utiles :
userId,roleSlug,syndicId,scope,token_use=mcp_access aud= audience MCP publique (https://www.coprolive.com/mcp)- TTL access token : 1 heure
- Refresh opaque : 30 jours, rotation à chaque usage
Scopes
| Scope | Données |
|---|---|
profile:read | Utilisateur + cabinet syndic |
coproprietes:read | Copropriétés |
ag:read | Assemblées + résolutions |
dashboard:read | Métriques et alertes |
Le grant syndic V1 délivre typiquement ces quatre scopes.
Appels API REST
GET https://app.coprolive.com/api/mcp/v1/whoami
Authorization: Bearer <access_token>Sans Bearer → 401. Compte copropriétaire ou syndic manquant → 403. Voir Erreurs et limites.