MCP Academy · Lekcja

Wersjonowanie narzędzi i schematów

Rozwijaj serwer bez psucia klientów.

Lekcja 4 z 413 kroki

Wersjonowanie narzędzi i schematów to bezpłatna lekcja MCP Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej MCP Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs MCP Academy zawiera 4 lekcji w sumie.

Klienci zależą od kształtu danych

Gdy inni już się połączą, będą polegać na nazwach narzędzi i kształtach argumentów. Nieostrożna zmiana może od razu zepsuć każdego klienta.

Zmiany addytywne są bezpieczne

Dodanie opcjonalnego parametru z wartością domyślną pozwala zachować działanie dotychczasowych wywołujących. Po prostu ignorują one nowe pole, którego nie wysyłają.

def search(q: str, limit: int = 10) -> list:
    ...

Breaking Changes bolą

Zmiana nazwy narzędzia, usunięcie argumentu lub ustawienie go jako wymaganego to zmiany łamiące zgodność. Istniejący klienci nagle wysyłają wywołania, które już nie pasują.

Dodawaj, a potem wycofuj

Aby rozwijać pole, należy dodać nowe i zachować stare. Stare pole należy oznaczyć w opisie jako deprecated, aby wywołujący wiedzieli, że trzeba przejść na nowe.

Wersja w nazwie narzędzia

W przypadku rzeczywistej zmiany łamiącej zgodność należy udostępnić narzędzie v2 obok v1. Obie wersje mogą działać przez pewien czas, dzięki czemu klienci przejdą na nową wersję w dogodnym dla siebie tempie.

@mcp.tool(name="search_v2")
def search_v2(query: str) -> list:
    ...

Serwer zgłasza swoją wersję

Podczas uzgadniania połączenia serwer ogłasza swoją nazwę i wersję. Należy ją zwiększać, aby klienci widzieli, z którym wydaniem się połączyli.

mcp = FastMCP("my-server")
# version surfaces in server info

Stosuj wersjonowanie semantyczne

Stosuj semver: zwiększaj numer patch przy poprawkach, minor przy dodatkowych funkcjach, a major przy zmianie łamiącej zgodność. Numer opowiada całą historię.

Rozszerzaj dane wyjściowe, nie zawężaj ich

Dodanie pola do wyniku jest zazwyczaj bezpieczne, natomiast jego usunięcie łamie zgodność. Traktuj schemat output jako obietnicę, którą klienci analizują.

Prowadź dziennik zmian

Odnotowuj każdą zmianę narzędzia i schematu w pliku changelog. Użytkownicy aktualizujący aplikację muszą widzieć, co przeniesiono, co dodano, a co usunięto.

Określ termin wycofania

Ogłaszaj, kiedy stare narzędzie zostanie usunięte. Jasno określona data sunset zachęca do migracji, bez nagłego odbierania komukolwiek dotychczasowego rozwiązania.

Testuj ze starymi klientami

Przed wydaniem uruchom tests tak, jak zrobiłby to starszy klient. Pozwoli to wykryć przypadkowe zmiany łamiące zgodność, których nie zauważy system kontroli typów.

Szybkie sprawdzenie

Jaka zmiana istniejącego narzędzia jest bezpieczna dla obecnych klientów?

Podsumowanie: bezpieczny rozwój

Preferuj zmiany additive, wycofuj elementy przed ich usunięciem, przy rzeczywistych zmianach łamiących zgodność udostępniaj v2, stosuj semver i prowadź dziennik zmian. Możesz wydawać kolejne wersje ze spokojem! 🚀

Bezpłatny start

Ucz się Python dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Wersjonowanie narzędzi i schematów” jest bezpłatna?

Tak — pełny tekst „Wersjonowanie narzędzi i schematów” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu MCP Academy, przejdź na CoddyKit PRO. Kurs MCP Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Wersjonowanie narzędzi i schematów”?

Rozwijaj serwer bez psucia klientów. Ćwiczysz MCP Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć MCP Academy?

Nie wymagamy żadnego doświadczenia. MCP Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Wersjonowanie narzędzi i schematów”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji MCP Academy?

Tak. Każda lekcja MCP Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Warstwowa architektura serwera
  2. Konfiguracja i sekrety przez środowisko
  3. Narzędzia idempotentne i świadome efektów ubocznych
  4. Wersjonowanie narzędzi i schematów
← Powrót do MCP Academy