Τώρα που γνωρίζουμε λίγα περισσότερα για το SSE, ας δημιουργήσουμε έναν SSE server.
Για να δημιουργήσουμε τον server, πρέπει να έχουμε στο μυαλό μας δύο πράγματα:
- Πρέπει να χρησιμοποιήσουμε έναν web server για να εκθέσουμε endpoints για τη σύνδεση και τα μηνύματα.
- Να χτίσουμε τον server μας όπως συνήθως, με εργαλεία, πόρους και prompts όπως κάναμε με το stdio.
Για να δημιουργήσουμε τον server, χρησιμοποιούμε τους ίδιους τύπους όπως με το stdio. Ωστόσο, για το transport, πρέπει να επιλέξουμε SSE.
Ας προσθέσουμε τώρα τις απαραίτητες διαδρομές.
Προσθέτουμε διαδρομές που διαχειρίζονται τη σύνδεση και τα εισερχόμενα μηνύματα:
Ας προσθέσουμε τώρα λειτουργίες στον server.
Τώρα που έχουμε ορίσει τα πάντα ειδικά για το SSE, ας προσθέσουμε λειτουργίες όπως εργαλεία, prompts και πόρους.
Ο πλήρης κώδικάς σας θα πρέπει να μοιάζει ως εξής:
Τέλεια, έχουμε έναν server που χρησιμοποιεί SSE, ας τον δοκιμάσουμε τώρα.
Το Inspector είναι ένα εξαιρετικό εργαλείο που είδαμε σε προηγούμενο μάθημα Δημιουργία του πρώτου σας server. Ας δούμε αν μπορούμε να το χρησιμοποιήσουμε και εδώ:
Για να τρέξετε τον inspector, πρέπει πρώτα να έχετε έναν SSE server σε λειτουργία, οπότε ας το κάνουμε τώρα:
- Εκτελέστε τον server
-
Εκτελέστε τον inspector
![NOTE] Τρέξτε αυτό σε ξεχωριστό παράθυρο τερματικού από αυτό που τρέχει ο server. Επίσης, σημειώστε ότι πρέπει να προσαρμόσετε την παρακάτω εντολή ώστε να ταιριάζει με το URL όπου τρέχει ο server σας.
npx @modelcontextprotocol/inspector --cli http://localhost:8000/sse --method tools/list
Η εκτέλεση του inspector είναι ίδια σε όλα τα περιβάλλοντα εκτέλεσης. Παρατηρήστε πως αντί να δίνουμε μια διαδρομή για τον server και μια εντολή εκκίνησης, περνάμε το URL όπου τρέχει ο server και επίσης ορίζουμε τη διαδρομή
/sse.
Συνδεθείτε στον server επιλέγοντας SSE από το αναπτυσσόμενο μενού και συμπληρώστε το πεδίο URL όπου τρέχει ο server σας, π.χ. http:localhost:4321/sse. Τώρα κάντε κλικ στο κουμπί "Connect". Όπως πριν, επιλέξτε να εμφανιστούν τα εργαλεία, επιλέξτε ένα εργαλείο και δώστε τις τιμές εισόδου. Θα δείτε ένα αποτέλεσμα όπως το παρακάτω:
Τέλεια, μπορείτε να δουλέψετε με τον inspector, ας δούμε τώρα πώς μπορούμε να δουλέψουμε με το Visual Studio Code.
Προσπαθήστε να επεκτείνετε τον server σας με περισσότερες λειτουργίες. Δείτε αυτή τη σελίδα για παράδειγμα, για να προσθέσετε ένα εργαλείο που καλεί ένα API. Εσείς αποφασίζετε πώς θα είναι ο server. Καλή διασκέδαση :)
Λύση Εδώ είναι μια πιθανή λύση με λειτουργικό κώδικα.
Τα βασικά σημεία που πρέπει να κρατήσετε από αυτό το κεφάλαιο είναι τα εξής:
- Το SSE είναι το δεύτερο υποστηριζόμενο transport μετά το stdio.
- Για να υποστηρίξετε SSE, πρέπει να διαχειρίζεστε εισερχόμενες συνδέσεις και μηνύματα χρησιμοποιώντας ένα web framework.
- Μπορείτε να χρησιμοποιήσετε τόσο τον Inspector όσο και το Visual Studio Code για να καταναλώσετε έναν SSE server, όπως και με τους stdio servers. Παρατηρήστε πως διαφέρει λίγο ανάμεσα σε stdio και SSE. Για το SSE, πρέπει να ξεκινήσετε τον server ξεχωριστά και μετά να τρέξετε το εργαλείο inspector. Επίσης, για το εργαλείο inspector, υπάρχουν κάποιες διαφορές καθώς πρέπει να ορίσετε το URL.
Αποποίηση ευθυνών:
Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία αυτόματης μετάφρασης AI Co-op Translator. Παρότι προσπαθούμε για ακρίβεια, παρακαλούμε να έχετε υπόψη ότι οι αυτόματες μεταφράσεις ενδέχεται να περιέχουν λάθη ή ανακρίβειες. Το πρωτότυπο έγγραφο στη γλώσσα του θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή λανθασμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.
