MCP Academy · leksjon

Lister kontra malbaserte ressurser

Tilby faste oppføringer og mønstre som bygges underveis.

Leksjon 3 av 413 trinn

Lister kontra malbaserte ressurser er en gratis leksjon i MCP Academy på CoddyKit. Dette er leksjon 3 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i MCP Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i MCP Academy inneholder totalt 4 leksjoner.

To måter å tilby data på

MCP eksponerer data på to måter: en listet ressurs med en fast URI eller en malbasert ressurs med plassholdere. Når du vet hvilken du skal velge, blir serveren tydeligere.

Listet: Kan listes opp og er få

En listet ressurs har en konkret URI og vises i resources/list. Bruk den når det bare finnes noen få kjente elementer klienten kan bla gjennom.

@mcp.resource("config://app")
def app_config() -> str:
    return read_config()

Malbasert: Uendelig gjennom et mønster

En malbasert ressurs bruker plassholdere i krøllparenteser og dekker derfor utallige URI-er. Den kan ikke listes opp fullstendig, fordi mengden er åpen.

@mcp.resource("file://{path}")
def read_file(path: str) -> str:
    return open(path).read()

Forskjellen i ressurslisten

Klienter kaller resources/list for å oppdage faste ressurser. Maler vises i stedet i en separat malliste, der de beskriver formen fremfor konkrete oppføringer.

Bla gjennom eller adresser

Tenk på det som å bla gjennom eller å adressere. Ressurser i en liste ligner menyelementer du skanner gjennom, mens maler ligner på å skrive inn en adresse du allerede kjenner.

Når mengden er liten

Hvis dataene dine utgjør et lite, stabilt sett, bør du foretrekke ressurser i en liste. Modellen kan se alle alternativene, noe som gjør det tydelig for den hvilket valg som er riktig.

Når mengden er enorm

Hvis det finnes tusenvis av elementer, er en mal et bedre valg. Hvis alle skulle listes opp, ville det oversvømme klienten, så du beskriver mønsteret og lar den fylle inn verdiene.

weather://{city}/today

Kombiner fritt

En virkelig server gjør ofte begge deler: noen få oppføringer for vanlige data, i tillegg til maler for resten. De fungerer fint side om side.

Gjør oppdagelsen enklere

Maler kan ikke enumerere, men du kan legge til en liten indeksressurs i listen som peker på populære URI-er og gir modellen nyttige startpunkter.

@mcp.resource("cities://index")
def cities() -> str:
    return "london, paris, tokyo"

Samme lesing uansett

Uansett hvordan en URI blir funnet, leser klienten den på samme måte: med ett kall til resources/read. Om ressursen er listet opp eller følger en mal, endrer hvordan den oppdages, ikke hvordan innholdet hentes.

Hvorfor dette er viktig

Valget mellom listede ressurser og maler påvirker hvor enkelt modellen finner dataene dine. Velg listede ressurser for blaing og maler for skalerbarhet, så forblir serveren brukervennlig. 🎯

Rask sjekk

Hvilken ressurstype bør du bruke for tusenvis av elementer?

Oppsummering

Du har lært at ressurser i en liste passer for små, utforskbare sett, mens malbaserte ressurser skalerer til enorme samlinger, og at de to fungerer godt sammen. Neste tema er å varsle klienter om oppdateringer. 🚀

Gratis å komme i gang

Lær deg Python med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
30
Leksjoner
120

Ofte stilte spørsmål

Er leksjonen «Lister kontra malbaserte ressurser» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien MCP Academy, inkludert «Lister kontra malbaserte ressurser», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i MCP Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Lister kontra malbaserte ressurser»?

Tilby faste oppføringer og mønstre som bygges underveis. Du øver på MCP Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med MCP Academy?

Ingen tidligere erfaring er nødvendig. MCP Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.

Hvor lang tid tar leksjonen «Lister kontra malbaserte ressurser»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne MCP Academy-leksjonen?

Ja. Alle MCP Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Parameteriserte ressurs-URI-er
  2. Bygge innhold ved lesing
  3. Lister kontra malbaserte ressurser
  4. Varsle klienter om oppdateringer
← Tilbake til MCP Academy