Skip to content

Latest commit

 

History

History
101 lines (61 loc) · 4.8 KB

File metadata and controls

101 lines (61 loc) · 4.8 KB

Ora che sappiamo qualcosa in più su SSE, costruiamo un server SSE.

Esercizio: Creare un server SSE

Per creare il nostro server, dobbiamo tenere a mente due cose:

  • Dobbiamo usare un web server per esporre gli endpoint per la connessione e i messaggi.
  • Costruire il nostro server come facciamo normalmente con strumenti, risorse e prompt quando usavamo stdio.

-1- Creare un'istanza del server

Per creare il nostro server, usiamo gli stessi tipi usati con stdio. Tuttavia, per il trasporto, dobbiamo scegliere SSE.

Aggiungiamo ora le rotte necessarie.

-2- Aggiungere le rotte

Aggiungiamo le rotte che gestiscono la connessione e i messaggi in arrivo:

Aggiungiamo ora le funzionalità al server.

-3- Aggiungere funzionalità al server

Ora che abbiamo definito tutto ciò che riguarda SSE, aggiungiamo funzionalità al server come strumenti, prompt e risorse.

Il codice completo dovrebbe apparire così:

Ottimo, abbiamo un server che usa SSE, proviamolo subito.

Esercizio: Debuggare un server SSE con Inspector

Inspector è un ottimo strumento che abbiamo visto in una lezione precedente Creare il tuo primo server. Vediamo se possiamo usare Inspector anche qui:

-1- Avviare l'inspector

Per avviare l'inspector, devi prima avere un server SSE in esecuzione, quindi facciamolo subito:

  1. Avvia il server

  2. Avvia l'inspector

    ![NOTE] Esegui questo in una finestra del terminale separata rispetto a quella in cui gira il server. Nota inoltre che devi adattare il comando sottostante per riflettere l'URL dove il tuo server è in esecuzione.

    npx @modelcontextprotocol/inspector --cli http://localhost:8000/sse --method tools/list

L'esecuzione dell'inspector è uguale in tutti gli ambienti di runtime. Nota come, invece di passare un percorso al nostro server e un comando per avviarlo, passiamo l'URL dove il server è attivo e specifichiamo anche la rotta /sse.

-2- Provare lo strumento

Connetti il server selezionando SSE nel menu a tendina e inserisci l'URL dove il tuo server è in esecuzione, per esempio http:localhost:4321/sse. Ora clicca sul pulsante "Connect". Come prima, seleziona la lista degli strumenti, scegli uno strumento e fornisci i valori di input. Dovresti vedere un risultato simile a questo:

Server SSE in esecuzione nell'inspector

Ottimo, riesci a lavorare con l'inspector, vediamo ora come lavorare con Visual Studio Code.

Compito

Prova a sviluppare il tuo server con più funzionalità. Consulta questa pagina per esempio per aggiungere uno strumento che chiama un'API. Decidi tu come dovrebbe essere il server. Divertiti :)

Soluzione

Soluzione Ecco una possibile soluzione con codice funzionante.

Punti chiave

I punti chiave di questo capitolo sono:

  • SSE è il secondo tipo di trasporto supportato dopo stdio.
  • Per supportare SSE, devi gestire le connessioni in arrivo e i messaggi usando un framework web.
  • Puoi usare sia Inspector che Visual Studio Code per consumare un server SSE, proprio come per i server stdio. Nota come ci siano alcune differenze tra stdio e SSE. Per SSE, devi avviare il server separatamente e poi eseguire lo strumento inspector. Per lo strumento inspector, c’è anche la differenza che devi specificare l’URL.

Esempi

Risorse aggiuntive

Cosa c’è dopo

Disclaimer:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica Co-op Translator. Pur impegnandoci per garantire l’accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua madre deve essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un traduttore umano. Non ci assumiamo alcuna responsabilità per eventuali incomprensioni o interpretazioni errate derivanti dall’uso di questa traduzione.