Vai al contenuto principale
Ogni richiesta al server MCP porta con sé una chiave: quella che Claude o ChatGPT hanno ricevuto quando li hai autorizzati, oppure una chiave API che hai creato. La chiave ha bisogno dello scope mcp per connettersi, e i suoi altri scope decidono quali tool vede il client. Un tool fuori dagli scope della chiave non viene elencato, e chiamarlo dà la stessa risposta di un tool sconosciuto.

Scope

Alcune chiamate verificano uno scope in base ai loro argomenti. get_metrics_history richiede apps:read per un’applicazione e databases:read per un database. create_database con connect_to_app richiede anche databases:credentials ed envs:write, set_env_vars con restart richiede anche apps:control, e commit_application con snapshot richiede anche snapshots:write. Senza lo scope richiesto, quella chiamata risponde MISSING_SCOPE e non viene eseguito nulla. Claude e ChatGPT richiedono tutti gli scope qui sopra. Nella pagina di consenso di Square Cloud puoi deselezionarne uno qualsiasi tranne mcp, ma non puoi mai aggiungerne. Una connessione non riceve mai account:read, apps:deploy, ai:chat né gli scope di Blob Storage, perché nessun tool MCP li usa.
Alcuni scope arrivano più lontano di quanto suggerisca il nome. files:write modifica il codice che la tua applicazione esegue, envs:write ne modifica la configurazione e i segreti, e databases:credentials ruota le password dei database. Dai a un client solo ciò di cui ha bisogno: per un accesso in sola lettura, usa mcp con gli scope :read.

Chiavi limitate ad applicazioni e database

Una chiave API può essere limitata ad alcune applicazioni e database. Tramite l’MCP, una chiave del genere:
  • Raggiunge solo quelle risorse. Una chiamata che indica qualsiasi altra applicazione o database risponde RESOURCE_NOT_ALLOWED prima che venga eseguito qualcosa, e list_applications e list_databases restituiscono solo le risorse della chiave.
  • Perde i tool che riguardano l’intero account: get_all_applications_status, list_account_domains, list_workspaces, create_application, upload_application, create_database, connect_database e rotate_database_credentials (una rotazione aggiorna tutte le applicazioni che usano il database).
  • Indica la risorsa: list_snapshots e restore_snapshot richiedono l’applicazione o il database, perché la panoramica dell’intero account copre risorse fuori dalla chiave.
Le connessioni di Claude e ChatGPT coprono l’intero account. Per limitare un client AI ad alcune applicazioni, collegalo con una chiave API limitata.

Ogni modifica viene eseguita subito

Tutti i tool agiscono già alla prima chiamata, compresi l’eliminazione di un’applicazione o di un database e il ripristino di uno snapshot. Square Cloud non ti chiede nulla prima: quando chiamare un tool lo decide il tuo client AI. Ogni tool indica al client se si limita a leggere o se può distruggere qualcosa, e la maggior parte dei client chiede il tuo permesso prima di un tool distruttivo: tieni attiva quella richiesta.

Eliminazioni e ripristini

delete_application, delete_database e restore_snapshot non si possono annullare, quindi Square Cloud fa uno snapshot di sicurezza dell’applicazione o del database prima di agire, a meno che non ne esista già uno degli ultimi minuti. Il campo safety_snapshot del risultato indica quale caso si è verificato: Finché lo snapshot è ancora in fase di generazione, non viene eseguito nulla: la chiamata risponde SNAPSHOT_NOT_READY e il client riprova con gli stessi argomenti tra circa 2 minuti. Lo snapshot di sicurezza conta nel limite giornaliero di snapshot del tuo piano. Dopo un’eliminazione, resta nella dashboard, pronto da scaricare e caricare come nuova applicazione: restore_snapshot ripristina solo applicazioni e database che esistono ancora.

Segreti

  • list_env_vars restituisce solo i nomi delle variabili e, di un URL di connessione, solo lo schema e l’host.
  • I tool dei file non leggono, scrivono né eliminano mai i file .env (né *.env, .env-* e .envrc; un template come .env.example può essere letto) e non leggono mai chiavi private o certificati (.pem, .key, .p12, .pfx, .ppk, .jks e chiavi SSH come id_rsa).
  • I segreti riconosciuti nei log delle applicazioni vengono mascherati.
  • I link di download di snapshot e certificati non vengono mai inviati.
Log e file delle tue applicazioni sono contenuti che il modello legge, e il testo al loro interno potrebbe cercare di manipolarlo. Controlla cosa propone il client prima di consentirlo.

Feed delle attività

Le modifiche fatte tramite l’MCP appaiono nel tuo feed delle attività (piani Standard e superiori) con MCP come origine, sotto la stessa azione della dashboard: un riavvio, il caricamento di un file, la modifica di una variabile d’ambiente. Le letture non vengono registrate. L’autorizzazione di Claude o ChatGPT appare come autorizzazione di un client.