MCP Academy · Oppitunti

Protokollavirheet ja työkalujen epäonnistumiset

Erottakaa siirtotason viat liiketoimintalogiikan virheistä.

Oppitunti 2/413 vaihetta

Protokollavirheet ja työkalujen epäonnistumiset on ilmainen MCP Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu MCP Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. MCP Academy-kurssilla on yhteensä 4 oppituntia.

Kaksi hyvin erilaista epäonnistumista

MCP:ssä on kahdenlaisia epäonnistumisia: itse siirtotien protocol-protokollavirhe ja liiketoimintalogiikan sisäinen työkalun epäonnistuminen. Niitä käsitellään eri tavoin.

Protokollavirheet ovat JSON-RPC:ssä

protocol-protokollavirhe tarkoittaa, ettei viestiä voitu käsitellä lainkaan, esimerkiksi tuntemattoman metodin tai virheellisten parametrien vuoksi. Se välitetään JSON-RPC:n virhekentässä.

{"jsonrpc": "2.0", "id": 7,
 "error": {"code": -32601,
           "message": "Method not found"}}

Työkalun epäonnistumiset ovat tuloksessa

tool-työkalun epäonnistuminen tarkoittaa, että kutsu saavutti funktionne, mutta työssä tapahtui virhe. Se palauttaa tavallisen tuloksen, jonka isError-arvo on true.

Miksi jaottelu on tärkeä

Mallin pitäisi nähdä tool-työkalun epäonnistumiset ja reagoida niihin, mutta protokollavirheet ovat yleensä merkki viasta, jonka asiakas käsittelee – eivät asia, jota tekoäly voi yrittää uudelleen.

JSON-RPC:n vakiokoodit

Protokollan codes-koodit ovat negatiivisia ja standardoituja: -32601 tarkoittaa, ettei metodia löydy, -32602 virheellisiä parametreja ja -32700 jäsennysvirhettä.

Työkalun epäonnistumiset saavuttavat mallin

Koska työkalun epäonnistuminen on vain result-tulos, malli lukee sen kontekstina ja voi päättää yrittää uudelleen, muuttaa syötettä tai selittää ongelman. 🔁

Poikkeuksen nostaminen työkalussa

Kun nostatte työkalussa poikkeuksen, FastMCP muuntaa sen tool-työkalun epäonnistumistulokseksi, ei protokollavirheeksi. Palvelin jatkaa toimintaansa.

@mcp.tool()
def fetch(url: str) -> str:
    if not url.startswith("http"):
        raise ValueError("url must be http")

Tuntematon työkalu on protokollatason virhe

Jos asiakas pyytää työkalua, jota ei ole olemassa, kyseessä on protocol-protokollavirhe. Pyyntö ei koskaan saavuta mitään funktioistanne.

Virheelliset argumentit voivat olla kumpaa tahansa

Kaaviotason tyyppiristiriidat näkyvät protocol-protokollan invalid-params-virheenä, kun taas oikean tyyppinen mutta arvoltaan virheellinen syöte on parasta käsitellä työkalun epäonnistumisena.

Kohdistakaa epäonnistuminen oikealle vastaanottajalle

Kysykää, kenen pitäisi reagoida. Jos model-malli voi korjata asian, tehkää siitä työkalun epäonnistuminen. Jos vain kehittäjä voi korjata sen, protokollavirhe on oikea ratkaisu.

Pidättehän siirtotien toimintakykyisenä

Älkää koskaan päästäkö liiketoimintaongelmia vuotamaan protocol-protokollavirheiksi. Se hämmentää asiakkaita ja voi katkaista istunnon, jonka pitäisi jatkua.

Pikakysymys

Missä työkalufunktion sisäinen epäonnistuminen ilmoitetaan?

Kertaus

Protocol-protokollavirhe tarkoittaa, että itse viesti epäonnistui; työkalun epäonnistuminen tarkoittaa logiikan epäonnistumista. Ohjatkaa kumpikin sille, joka voi toimia asian perusteella, ja pitäkää siirtotie toimintakykyisenä. ✅

Aloita maksutta

Opi Python tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Protokollavirheet ja työkalujen epäonnistumiset” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa MCP Academy-oppimispolun 3 oppituntia, myös oppitunnin “Protokollavirheet ja työkalujen epäonnistumiset”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. MCP Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Protokollavirheet ja työkalujen epäonnistumiset”?

Erottakaa siirtotason viat liiketoimintalogiikan virheistä. Harjoittelet MCP Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni MCP Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin MCP Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Protokollavirheet ja työkalujen epäonnistumiset”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä MCP Academy-oppitunnilla?

Kyllä. Jokainen MCP Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Mallin näkemät työkalujen virheet
  2. Protokollavirheet ja työkalujen epäonnistumiset
  3. Syötteiden tarkistaminen ennen toimintaa
  4. Turvallinen epäonnistuminen ilman jumiutumista
← Takaisin: MCP Academy