# Attivazione

> L'interruttore generale, la porta su cui l'endpoint resta in ascolto e le quattro misure che lo tengono locale.

Un'installazione appena fatta non annuncia nulla agli agenti. L'accesso agente è a un solo
interruttore di distanza, e quell'interruttore è il primo dei tre controlli che qui fanno le
veci dell'autenticazione: l'interruttore generale, gli interruttori per ogni area e il
registro.

## L'interruttore e la porta {#the-switch-and-the-port}

L'interruttore generale è **disattivo** per impostazione predefinita. Si attiva nella pagina
**Agente** (aprire la pagina richiede il permesso di gestione dell'agente del proprio
ruolo locale); l'endpoint resta poi in ascolto su `http://127.0.0.1:<port>/mcp` con
Streamable HTTP. Gli agenti possono collegarsi anche mentre l'applicazione è nascosta
nell'area di notifica.

| Impostazione | Che cosa fa | Valori | Predefinito |
| --- | --- | --- | --- |
| Abilita accesso agente (MCP) | Avvia o ferma l'endpoint. Disattivo significa nessun endpoint e niente di annunciato. | attivo / disattivo | disattivo |
| Porta | Porta locale su cui l'endpoint resta in ascolto. Cambiarla riavvia l'accesso agente, e ogni frammento di collegamento della pagina si aggiorna di conseguenza. | 1024–65535. Una porta su cui l'accesso agente non può spostarsi viene rifiutata prima che qualcosa venga salvato: il motivo viene detto sotto il campo, il campo torna alla porta in vigore e non si riavvia nulla. Vengono rifiutate sei voci: un valore fuori intervallo (« Immettere un numero compreso tra 1024 e 65535. »); la porta del server web, impostata in [Accesso remoto](remote-access) (« La porta N è già del server web. Scegliere un'altra porta oppure spostare prima il server web. »); la porta del server OPC UA in [Configurazione](connector-opcua-configuration), in esecuzione o fermo (« La porta N è già del server OPC UA. Scegliere un'altra porta oppure spostare prima il server. »); la porta del [server Modbus](connector-modbus-server) nella pagina Connector, acceso o spento (« La porta N è già del server Modbus. Scegliere un'altra porta oppure spostare prima il server Modbus. »); la porta del [broker MQTT](connector-mqtt-broker) nella pagina Connector, acceso o spento (« La porta N è già del broker MQTT. Scegliere un'altra porta oppure spostare prima il broker MQTT. »); e una porta che qualcos'altro su questa macchina tiene già occupata (« La porta N è occupata su questa macchina. Chiudere ciò che la tiene occupata oppure scegliere un'altra porta. »). | 18181 |

Accanto all'interruttore, una pastiglia di stato mostra **Chiuso** mentre l'interruttore è
disattivo e **Aperto** mentre è attivo, così lo stato dell'endpoint si legge a colpo d'occhio
sulla pastiglia.

Sotto l'endpoint, un conteggio senza un titolo proprio riassume gli interruttori di
**Aree consentite** più in basso nella pagina. La sua prima riga dà a ciascuno dei quattro
livelli il numero delle sue aree attive, dietro un punto acceso nel colore del livello finché
almeno una di esse è attiva e grigio finché non lo è nessuna: con tutte le aree attive,
mostra 5 **Lettura**, 6 **Configurazione**, 4 **Comando** e 1 **Ripristino**. La riga
sotto ne fa la somma, « 16 gruppi di capacità aperti su 16 », e, finché è attiva un'area
di livello Comando o Ripristino, aggiunge quanti dei gruppi aperti possono scrivere sul
campo: « 5 con scrittura dal vivo ». Conta gli interruttori delle aree e nient'altro, così
l'esposizione della stazione si legge a colpo d'occhio. Finché l'interruttore generale è
disattivo, il conteggio resta in grigio insieme all'endpoint e alla porta, ma continua a
leggere gli interruttori, che conservano ciò che è stato salvato: mostra che cosa l'accesso
agente apre non appena l'interruttore torna attivo.

Finché l'interruttore è disattivo, **Copia l'URL** e **Porta locale** restano in grigio sotto l'endpoint, e il puntatore posato su uno dei due ne dice il motivo: « L'accesso agente è disabilitato: va prima abilitato in Accesso. » La scheda **Aree consentite** dice la stessa frase sopra i suoi interruttori in grigio.

Tutto si salva da solo nella pagina; non c'è alcun pulsante di salvataggio.

## Come è protetto l'endpoint {#how-the-endpoint-is-protected}

- **Solo loopback.** Il socket si lega a `127.0.0.1`, mai a un'interfaccia di rete. La rete
  dell'impianto non lo raggiunge.
- **Le richieste dei browser vengono rifiutate.** Il solo legame non impedirebbe a una
  pagina web malevola di far puntare il proprio dominio su 127.0.0.1, perciò l'endpoint
  verifica anche le due intestazioni che un browser non può falsificare: una richiesta il
  cui `Host` non è locale, o che porta un `Origin` non locale, è rifiutata con un 403 prima
  ancora di poter aprire una sessione. Ogni rifiuto è registrato nell'area **Agent** di
  [Eventi](events), così una stazione sondata da una scheda del browser lascia una traccia.
- **Nessuna autenticazione sull'endpoint, per scelta.** I controlli sono l'interruttore
  generale, gli interruttori per ogni area e il registro. Se un giorno esponi l'endpoint
  attraverso un tunnel, l'autenticazione deve stare sul tunnel (vedi [ChatGPT e altri client
  instradati dal cloud](agent-clients)).
- **L'elenco degli strumenti è pari alle aree abilitate.** Gli strumenti di un'area
  disabilitata non vengono affatto annunciati: sono assenti, non rispondono di no. Cambiare
  un interruttore riavvia l'endpoint, così quello che un agente vede corrisponde sempre a
  quello che è stato consentito. I due strumenti della guida sono l'unica eccezione: leggono la
  documentazione dell'applicazione e nulla della stazione, quindi arrivano con l'endpoint
  qualunque cosa dicano gli interruttori ([Guida](agent-tools#help)).
