Teraz, gdy wiemy już trochę więcej o SSE, zbudujmy serwer SSE.
Aby stworzyć nasz serwer, musimy mieć na uwadze dwie rzeczy:
- Musimy użyć serwera WWW, aby udostępnić endpointy do połączenia i przesyłania wiadomości.
- Budujemy serwer tak, jak zwykle, korzystając z narzędzi, zasobów i promptów, tak jak robiliśmy to przy użyciu stdio.
Do stworzenia serwera używamy tych samych typów co przy stdio. Jednak jako transport wybieramy SSE.
Dodajmy teraz potrzebne trasy.
Dodajmy trasy, które obsłużą połączenie oraz nadchodzące wiadomości:
Dodajmy teraz funkcjonalności do serwera.
Gdy mamy już wszystko, co specyficzne dla SSE, dodajmy funkcje serwera, takie jak narzędzia, prompt i zasoby.
Twój pełny kod powinien wyglądać tak:
Świetnie, mamy serwer korzystający z SSE, wypróbujmy go teraz.
Inspector to świetne narzędzie, które poznaliśmy w poprzedniej lekcji Tworzenie pierwszego serwera. Sprawdźmy, czy możemy go użyć także tutaj:
Aby uruchomić Inspectora, najpierw musisz mieć działający serwer SSE, więc zróbmy to teraz:
-
Uruchom serwer
-
Uruchom Inspectora
![NOTE] Uruchom to w osobnym oknie terminala niż ten, w którym działa serwer. Pamiętaj też, aby dostosować poniższe polecenie do URL, pod którym działa Twój serwer.
npx @modelcontextprotocol/inspector --cli http://localhost:8000/sse --method tools/list
Uruchamianie Inspectora wygląda tak samo we wszystkich środowiskach uruchomieniowych. Zauważ, że zamiast podawać ścieżkę do naszego serwera i polecenie uruchomienia serwera, podajemy URL, pod którym działa serwer, oraz określamy trasę /sse.
Połącz się z serwerem, wybierając SSE z listy rozwijanej i wpisz adres URL, pod którym działa Twój serwer, na przykład http://localhost:4321/sse. Następnie kliknij przycisk "Connect". Jak wcześniej, wybierz listę narzędzi, wybierz narzędzie i podaj wartości wejściowe. Powinieneś zobaczyć wynik podobny do poniższego:
Świetnie, potrafisz pracować z Inspectorem, zobaczmy teraz, jak pracować z Visual Studio Code.
Spróbuj rozbudować swój serwer o więcej funkcji. Zobacz tę stronę, aby na przykład dodać narzędzie wywołujące API. To Ty decydujesz, jak ma wyglądać serwer. Powodzenia :)
Rozwiązanie Oto możliwe rozwiązanie z działającym kodem.
Najważniejsze wnioski z tego rozdziału to:
- SSE to drugi obsługiwany transport obok stdio.
- Aby obsługiwać SSE, musisz zarządzać przychodzącymi połączeniami i wiadomościami za pomocą frameworka webowego.
- Możesz używać zarówno Inspectora, jak i Visual Studio Code do korzystania z serwera SSE, tak jak z serwerów stdio. Zauważ, że jest tu pewna różnica między stdio a SSE. W przypadku SSE musisz najpierw uruchomić serwer osobno, a potem uruchomić narzędzie Inspector. W przypadku Inspectora jest też różnica w tym, że musisz podać URL.
Zastrzeżenie:
Niniejszy dokument został przetłumaczony za pomocą usługi tłumaczenia AI Co-op Translator. Mimo że dążymy do jak największej dokładności, prosimy pamiętać, że tłumaczenia automatyczne mogą zawierać błędy lub nieścisłości. Oryginalny dokument w języku źródłowym należy traktować jako źródło autorytatywne. W przypadku informacji krytycznych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.
