Kesalahan Protokol dan Kegagalan Alat
Bedakan gangguan transportasi dari kesalahan logika bisnis.
Kesalahan Protokol dan Kegagalan Alat adalah pelajaran MCP Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar MCP Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus MCP Academy mencakup 4 pelajaran total.
Dua Kegagalan yang Sangat Berbeda
MCP memiliki dua jenis kegagalan: kesalahan protokol pada pesan yang dikirim, dan kegagalan alat di dalam logika bisnis Anda. Keduanya ditangani secara berbeda.
Kesalahan Protokol Berada di JSON-RPC
Kesalahan protokol berarti pesan sama sekali tidak dapat diproses, misalnya karena metode tidak dikenal atau parameter tidak valid. Kesalahan ini dibawa dalam kolom kesalahan JSON-RPC.
{"jsonrpc": "2.0", "id": 7,
"error": {"code": -32601,
"message": "Method not found"}}Kegagalan Alat Berada di Dalam Hasil
Kegagalan alat berarti pemanggilan telah mencapai fungsi Anda, tetapi pekerjaannya gagal. Pemanggilan tersebut mengembalikan hasil biasa yang ditandai dengan isError true.
Mengapa Pemisahan Ini Penting
Model harus melihat dan menanggapi kegagalan alat, sedangkan kesalahan protokol biasanya menandakan bug yang harus ditangani klien, bukan sesuatu yang dapat dicoba lagi oleh AI.
Kode JSON-RPC Standar
Kode protokol bernilai negatif dan terstandarisasi: -32601 berarti metode tidak ditemukan, -32602 berarti parameter tidak valid, dan -32700 berarti kesalahan penguraian.
Kegagalan Alat Sampai kepada Model
Karena kegagalan alat hanyalah sebuah hasil, model membacanya sebagai konteks dan dapat memutuskan untuk mencoba lagi, menyesuaikan masukan, atau menjelaskannya. 🔁
Mengajukan Pengecualian di Dalam Alat
Saat Anda mengajukan pengecualian di dalam alat, FastMCP mengubahnya menjadi hasil kegagalan alat, bukan kesalahan protokol. Server Anda tetap berjalan.
@mcp.tool()
def fetch(url: str) -> str:
if not url.startswith("http"):
raise ValueError("url must be http")Alat Tidak Dikenal Berada pada Tingkat Protokol
Jika klien meminta alat yang tidak ada, itu adalah kesalahan protokol. Permintaan tersebut tidak pernah mencapai fungsi apa pun milik Anda.
Argumen yang Salah Dapat Menjadi Keduanya
Ketidakcocokan tipe pada tingkat skema muncul sebagai kesalahan parameter-tidak-valid protokol, sedangkan tipe yang valid dengan nilai yang salah sebaiknya menjadi kegagalan alat.
Sesuaikan Kegagalan dengan Pihak yang Menanganinya
Tanyakan siapa yang harus menanganinya. Jika model dapat memperbaikinya, jadikan itu kegagalan alat. Jika hanya pengembang yang dapat memperbaikinya, gunakan kesalahan protokol.
Jaga Transportasi Tetap Sehat
Jangan pernah membiarkan masalah bisnis keluar sebagai kesalahan protokol. Hal itu membingungkan klien dan dapat menghentikan sesi yang seharusnya tetap berjalan.
Pemeriksaan Singkat
Di mana kegagalan di dalam fungsi alat Anda dilaporkan?
Rangkuman
Kesalahan protokol berarti pesan itu sendiri gagal; kegagalan alat berarti logika Anda gagal. Arahkan masing-masing kepada pihak yang dapat menanganinya dan jaga transportasi tetap sehat. ✅
Belajar Python dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Kesalahan Protokol dan Kegagalan Alat” gratis?
Ya — teks lengkap “Kesalahan Protokol dan Kegagalan Alat” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus MCP Academy, upgrade ke CoddyKit PRO. Kursus MCP Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Kesalahan Protokol dan Kegagalan Alat”?
Bedakan gangguan transportasi dari kesalahan logika bisnis. Kamu berlatih MCP Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai MCP Academy?
Tidak diperlukan pengalaman sebelumnya. MCP Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Kesalahan Protokol dan Kegagalan Alat” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran MCP Academy ini?
Ya. Setiap pelajaran MCP Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Kesalahan Alat yang Dapat Dilihat Model
- Kesalahan Protokol dan Kegagalan Alat
- Memvalidasi Input Sebelum Bertindak
- Gagal dengan Aman, Jangan Pernah Macet