Protokollavirheet ja työkalujen epäonnistumiset
Erottakaa siirtotason viat liiketoimintalogiikan virheistä.
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ä. ✅
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
- Mallin näkemät työkalujen virheet
- Protokollavirheet ja työkalujen epäonnistumiset
- Syötteiden tarkistaminen ennen toimintaa
- Turvallinen epäonnistuminen ilman jumiutumista