Meminta Roots Milik Klien
Minta daftar direktori kerja yang diizinkan.
Meminta Roots Milik Klien 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.
Sekarang Mari Memintanya
Mengetahui bahwa akar ada adalah langkah pertama. Langkah kedua adalah benar-benar meminta daftar terkininya kepada klien agar peladen Anda dapat menentukan tempat untuk membaca atau menulis. 📨
Peladen Memulai
Di sini arahnya berbalik: peladen Anda mengirim permintaan dan klien menjawab. Metode yang dipanggilnya adalah roots/list, untuk meminta semua hal yang saat ini disediakan klien.
{ "method": "roots/list" }Mengakses Akar melalui Konteks
Dalam SDK Python, Anda tidak perlu menyusun JSON mentah. Anda menggunakan objek konteks permintaan yang diberikan kepada alat Anda, yang membungkus sesi aktif dengan klien.
async def my_tool(ctx: Context):
...Satu Pemanggilan yang Praktis
Dari konteks tersebut, Anda memanggil list_roots() dan menunggunya. SDK mengirim roots/list untuk Anda dan mengembalikan jawaban klien sebagai hasil bertipe.
result = await ctx.session.list_roots()Yang Dikembalikan
Balasannya berisi daftar roots. Setiap item memiliki URI dan nama opsional, persis seperti bentuk sederhana yang Anda lihat sebelumnya, sehingga siap untuk diulangi.
for root in result.roots:
print(root.uri, root.name)Daftarnya Mungkin Kosong
Jawaban yang valid dapat berupa daftar kosong. Artinya, klien saat ini tidak menyediakan akar, jadi siapkan cadangan yang masuk akal alih-alih menganggap sebuah folder pasti ada.
Periksa Kemampuan Terlebih Dahulu
Memanggil list_roots hanya masuk akal jika klien mendukung akar. Peladen yang sopan memeriksa kemampuan yang dinyatakan sebelum meminta, sehingga menghindari kesalahan pada host yang tidak memilikinya.
Minta pada Waktu yang Tepat
Ambil akar saat Anda membutuhkannya, misalnya saat memulai alat berkas. Memintanya secara lambat membuat Anda tetap mendapatkan keadaan terbaru jika pengguna baru saja membuka folder lain.
Mengubah Akar Menjadi Jalur
URI akar berupa string seperti file:///home/ada. Untuk menggunakannya, urai URI file:// menjadi jalur sistem berkas yang sebenarnya sebelum membuka apa pun di dalamnya.
from urllib.parse import urlparse
path = urlparse(root.uri).pathDengarkan Perubahan
Jika klien mendukungnya, klien dapat mengirim notifikasi saat akar berubah. Dengan menangkapnya, Anda dapat mengambil ulang daftar tersebut alih-alih bekerja berdasarkan tampilan yang sudah usang.
notifications/roots/list_changedTangani Kegagalan dengan Hati-Hati
Permintaan tetap dapat gagal atau mengalami batas waktu. Bungkus pemanggilan tersebut agar tidak adanya jawaban membuat alat Anda menampilkan pesan yang jelas, bukan mengalami kerusakan. 🛟
Pemeriksaan Singkat
Pilih cara yang tepat untuk mendapatkan akar klien dalam SDK.
Ringkasan: Meminta Akar
Anda menunggu list_roots() pada sesi, mengulangi akar yang dikembalikan, mengurai setiap URI file://, serta menangani jawaban yang kosong atau gagal. Minta ulang saat akar berubah. ✅
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Meminta Roots Milik Klien” gratis?
Ya — teks lengkap “Meminta Roots Milik Klien” 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 “Meminta Roots Milik Klien”?
Minta daftar direktori kerja yang diizinkan. 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 “Meminta Roots Milik Klien” 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
- Informasi yang Diberikan Roots kepada Server
- Meminta Roots Milik Klien
- Menegosiasikan Kemampuan
- Menghormati Batasan Klien