Zasoby wyliczane a szablonowe
Udostępniaj stałe wpisy oraz wzorce tworzone na bieżąco.
Zasoby wyliczane a szablonowe to bezpłatna lekcja MCP Academy na CoddyKit. To lekcja 3 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.
Dwa sposoby udostępniania danych
MCP udostępnia dane na dwa sposoby: jako zasób wyświetlany na liście ze stałym URI albo jako zasób szablonowy z symbolami zastępczymi. Wiedza o tym, który wybrać, pomaga zachować przejrzystość serwera.
Wyświetlany na liście: możliwy do wyliczenia i nieliczny
Zasób wyświetlany na liście ma konkretny URI i pojawia się w resources/list. Należy go używać, gdy istnieje tylko kilka znanych elementów, które klient może przeglądać.
@mcp.resource("config://app")
def app_config() -> str:
return read_config()Szablonowy: nieskończony dzięki wzorcowi
Zasób szablonowy używa symboli zastępczych w nawiasach klamrowych, dzięki czemu obejmuje niezliczone URI. Nie można wyświetlić go w całości na liście, ponieważ zbiór możliwych wartości nie ma z góry określonych granic.
@mcp.resource("file://{path}")
def read_file(path: str) -> str:
return open(path).read()Różnica w wyświetlaniu na liście
Klienci wywołują resources/list, aby wykryć zasoby stałe. Szablony pojawiają się natomiast na osobnej liście szablonów — opisują strukturę, a nie konkretne wpisy.
Przeglądanie a adresowanie
Można myśleć o tym jako o różnicy między przeglądaniem a adresowaniem. Zasoby wymienione na liście przypominają pozycje w menu, które można przejrzeć, a szablony — wpisywanie znanego już adresu.
Gdy zbiór jest mały
Jeśli dane tworzą niewielki, stabilny zbiór, należy wybrać zasoby wymienione na liście. Model widzi wszystkie opcje, więc łatwiej jest mu wybrać właściwą.
Gdy zbiór jest ogromny
Jeśli elementów są tysiące, lepiej sprawdzi się szablon. Wymienienie ich wszystkich zalałoby klienta danymi, dlatego należy opisać wzorzec i pozwolić mu uzupełniać wartości.
weather://{city}/todaySwobodnie łącz oba podejścia
Rzeczywisty serwer często stosuje oba podejścia: kilka wymienionych na liście wpisów dla często używanych danych oraz szablony dla pozostałych. Mogą bez problemu współistnieć.
Ułatw odkrywanie
Szablony nie pozwalają wyliczyć wszystkich elementów, ale można dodać niewielki zasób wymieniony na liście jako indeks, wskazujący popularne URI i zapewniający modelowi przydatne punkty wyjścia.
@mcp.resource("cities://index")
def cities() -> str:
return "london, paris, tokyo"Ten sam odczyt w obu przypadkach
Niezależnie od tego, jak znaleziono URI, klient odczytuje je w ten sam sposób: za pomocą jednego wywołania resources/read. Lista lub szablon wpływają na odkrywanie zasobów, a nie na sposób pobierania ich zawartości.
Dlaczego to ważne
Wybór między zasobami wymienionymi na liście a zasobami opartymi na szablonach wpływa na łatwość, z jaką model znajduje dane. Wybierz listę do przeglądania, a szablony do obsługi dużej skali — wtedy serwer pozostanie wygodny w użyciu. 🎯
Szybkie sprawdzenie
Jakiego typu zasobu należy użyć w przypadku tysięcy elementów?
Podsumowanie
Dowiedziałeś się, że zasoby wymienione na liście sprawdzają się w przypadku małych zbiorów, które można przeglądać, natomiast zasoby oparte na szablonach skalują się do ogromnych kolekcji, a oba podejścia dobrze się uzupełniają. Dalej: powiadamianie klientów o aktualizacjach. 🚀
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 „Zasoby wyliczane a szablonowe” jest bezpłatna?
Tak — pełny tekst „Zasoby wyliczane a szablonowe” 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 „Zasoby wyliczane a szablonowe”?
Udostępniaj stałe wpisy oraz wzorce tworzone na bieżąco. Ć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 3 z 4.
Ile czasu zajmuje lekcja „Zasoby wyliczane a szablonowe”?
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
- Parametryzowane identyfikatory URI zasobów
- Tworzenie zawartości podczas odczytu
- Zasoby wyliczane a szablonowe
- Powiadamianie klientów o aktualizacjach