Una richiesta non autenticata riceve
401 con un header WWW-Authenticate (sotto).
OAuth
L’endpoint è una protected resource OAuth 2.1. L’authorisation server è ospitato da Scalekit, con il login stesso delegato alla dashboard storekit, in modo che un utente acceda con le sue normali credenziali storekit.1
Discovery
Una Fai I metadata dell’authorisation server stesso sono sul suo path
POST /mcp non autenticata restituisce:GET di quell’URL per ottenere i metadata della protected resource:/.well-known/oauth-authorization-server, come al solito. I client si registrano lì; non c’è alcun client ID o secret da configurare. I client che supportano lo standard MCP authorisation (Claude, ChatGPT, Cursor, VS Code, Claude Code) fanno tutto questo senza configurazione.2
Sign-in
L’authorisation server reindirizza l’utente alla dashboard storekit, che mostra Connecting your MCP client, please wait… mentre conferma la richiesta di login con l’API storekit, e poi rimanda al client. Un utente che non è loggato nella dashboard accede prima. Se l’utente appartiene a più account, il token si risolve al suo primo account; non c’è un selettore di account.
3
Chiamate
Invia l’access token come
Authorization: Bearer. Il sub del token è l’utente storekit; il suo claim scope viene allegato alla richiesta come scopes (default read). Rinnova come la tua libreria OAuth prevede; un token scaduto riceve un 401 e il client rifà la discovery.I ruoli utente della dashboard e l’accesso per singolo locale non si applicano a MCP. Un token per un utente che può vedere un solo locale nella dashboard legge ogni locale dell’account, e può chiamare i due strumenti di scrittura. Scegli di conseguenza chi si collega, consulta Autorizzazioni e privacy.
Verifica dell’endpoint
Una chiamata non autenticata è sufficiente per confermare che il server è raggiungibile e per vedere l’header di discovery che un client segue:401 Unauthorized con l’header WWW-Authenticate mostrato sopra. Per domande sull’accesso o sulla beta: mcp@storekit.com.
Verifiche di Origin e Host
Le richieste che portano un headerOrigin vengono verificate contro l’allow-list di storekit delle origin del browser quando ne è configurata una, e rifiutate con 403 prima dell’autenticazione se non corrispondono. Le richieste senza header Origin (ogni client desktop, CLI e server) passano direttamente all’autenticazione. L’header Host deve corrispondere all’hostname pubblico.
Rate limit
60 richieste per minuto scorrevole, con chiave per utente (per IP prima dell’autenticazione). Superarlo restituisce HTTP429 con un header Retry-After, al di fuori dell’envelope MCP.