00:00:00Dalam dua bulan terakhir, komunitas AI menyadari bahwa MCP memiliki masalah besar.
00:00:04Karena hal ini, komunitas sebenarnya telah memberikan beberapa solusi.
00:00:08Namun semua solusi tersebut memiliki celah yang besar.
00:00:10Beberapa waktu lalu kami membuat video tentang solusi Docker,
00:00:12yang kami anggap sebagai solusi terbaik untuk masalah MCP hingga saat ini.
00:00:16Docker merilis mode kode yang memungkinkan agen menulis kode JavaScript yang memanggil alat MCP secara langsung.
00:00:21Dan ini memecahkan masalah di mana alat MCP memakan banyak konteks
00:00:24dengan mengekspos alat dan deskripsi di jendela konteks.
00:00:27Jadi, jika Anda bekerja dengan banyak MCP, jendela konteks Anda akan penuh dengan
00:00:32alat-alat yang tidak perlu, yang sebagian besar bahkan jarang digunakan.
00:00:36Namun dengan gateway Docker MCP, Anda terkunci pada MCP yang telah dikonfigurasi Docker
00:00:41dan ada batasan pada MCP lokal maupun jarak jauh.
00:00:43Selain itu, Anda tidak dapat menyimpan alat kustom tersebut sebagai fungsi.
00:00:47Semua ini bermula ketika Cloudflare mengidentifikasi masalah ini dan mengusulkan solusi
00:00:51agar alat-alat ini ada sebagai kode yang dapat dieksekusi, alih-alih berada di jendela konteks.
00:00:56Anthropic, arsitek asli protokol ini, mengakui celah dalam
00:01:00produk mereka dan menindaklanjutinya dengan merilis makalah yang menyoroti masalah tepat ini.
00:01:04Setelah itu, orang-orang mulai menganggap serius masalah ini dan mulai mengeksplorasi solusi.
00:01:09Namun solusi mereka untuk mengubah setiap alat menjadi file typescript juga memiliki celah.
00:01:13Dengan banyaknya MCP yang terhubung, Anda harus mengonversi masing-masing ke kode secara individual dan
00:01:18Anda juga perlu menghabiskan banyak waktu untuk memastikan tidak ada yang gagal dalam prosesnya.
00:01:22Tetapi karena ini telah menjadi masalah yang diakui,
00:01:24orang-orang masih mencoba menghadirkan solusi yang lebih baik.
00:01:26Dan saat itulah kami menemukan alat baru bernama MCP to CLI.
00:01:30MCP to CLI memecahkan masalah penumpukan konteks pada MCP dengan mengubah semua
00:01:36server MCP menjadi alat CLI yang dapat Anda jalankan melalui perintah bash.
00:01:40Sekarang, kami terutama menggunakan kode cloud di tim kami, dan sebenarnya ia memiliki flag CLI yang bertujuan untuk
00:01:45menyelesaikan sebagian dari masalah ini—alat tersebut mengatasi penumpukan konteks awal MCP dengan tidak mengekspos
00:01:50semua alat di depan jendela konteks. Namun, ia memungkinkan kode cloud untuk memuat secara dinamis
00:01:55setiap alat saat dibutuhkan. Tapi itu masih menyisakan masalah lain di kode cloud. Seperti yang mungkin Anda ketahui,
00:02:00MCP mengembalikan output mereka langsung di jendela konteks. Dan jika ada output besar
00:02:05yang dikembalikan oleh alat MCP, output tersebut tetap berada di jendela konteks, yang menyebabkan
00:02:10penumpukan jendela konteks yang tidak perlu. Sekarang, Anda mungkin juga pernah mendengar tentang alat sumber terbuka lainnya seperti CLI
00:02:15Hub yang menargetkan masalah yang sama, tetapi mereka tidak efisien karena mengonversinya saat build time
00:02:20dan bukan saat runtime. Jadi apa sebenarnya arti konversi runtime?
00:02:25Artinya alat tersebut dikonversi menjadi perintah bash pada saat alat itu dipanggil.
00:02:29Sekarang, ini mungkin tampak baik-baik saja, tetapi apa yang terjadi ketika MCP asli itu sendiri diperbarui?
00:02:34Karena alat ini membangun alat MCP-nya pada saat runtime, setiap perubahan pada MCP asli akan tercermin secara otomatis pada alat yang dikonversi.
00:02:39Ini tidak akan mungkin terjadi jika kita membangun alat saat build time. Dalam kasus tersebut,
00:02:43kita harus mengambil dan memperbarui alat tersebut secara manual setiap saat. Namun Anda mungkin
00:02:48berpikir bahwa mengonversi alat yang sama setiap kali dipanggil akan membuat panggilan berulang menjadi lambat. Di situlah
00:02:53mekanisme caching berperan, yang telah mereka bangun ke dalam alat tersebut. Ia menyimpan semua alat MCP dalam
00:02:58cache dengan waktu aktif (TTL) default satu jam. Jadi semua alat MCP yang sering digunakan masuk langsung ke
00:03:03dalam cache dan tetap di sana selama satu jam. Dari sana, agen dapat mengambil alat dengan pengambilan yang lebih cepat
00:03:08tanpa mengorbankan fleksibilitas runtime. Alat ini dibangun tepat di atas SDK Python MCP,
00:03:13SDK yang sama yang digunakan setiap server MCP di bawahnya. Jadi dengan semua panggilan alat MCP yang
00:03:19dijalankannya, ia hanya mengeksekusinya sebagai perintah bash dan hanya memasukkan respons ke dalam jendela konteks agen
00:03:24ketika diminta. Ia juga menangani OpenAPI dan REST API melalui antarmuka CLI
00:03:30yang sama, artinya API apa pun yang tidak memiliki server MCP tetap dapat digunakan dengan cara yang
00:03:35persis sama. Tanpa alat ini, Anda terbatas pada jenis MCP yang dapat Anda hubungkan.
00:03:39Solusi serupa lainnya biasanya tidak memberi Anda fleksibilitas untuk bekerja dengan semua jenis MCP
00:03:44di satu tempat. Untuk mendukung klaim efisiensi token mereka, mereka menjalankan rangkaian pengujian otomatis menggunakan
00:03:49Tiktoken, pustaka Python untuk menghitung token. Saat mereka mengujinya, alat ini jauh lebih murah dan
00:03:54memiliki eksekusi yang jauh lebih cepat. Jadi Anda tidak perlu hanya percaya pada kata-kata kami. Yang satu ini benar-benar
00:03:59memiliki angka di baliknya. Anda dapat menginstalnya di sistem Anda menggunakan pip atau menjalankannya tanpa
00:04:03perlu menginstal. Kami memilih untuk menjalankannya tanpa menginstal karena menjaga lingkungan kerja tetap bersih.
00:04:07Dan mereka juga menyediakan skill yang membantu agen bekerja dengan alat ini lebih baik. Ini menjabarkan
00:04:13alur kerja inti dan memberikan contoh perintah bash untuk berbagai tugas seperti autentikasi dan caching
00:04:18yang tidak dimiliki konteksnya oleh agen Anda. Namun sebelum kita melangkah lebih jauh, mari kita dengar sepatah kata
00:04:22dari sponsor kami, Orchids. Kebanyakan pembangun AI menangani mockup sederhana dengan baik, tetapi mereka gagal saat Anda membutuhkan
00:04:27logika kompleks atau struktur multi-file. Di situlah Orchids berperan. Agen AI pertama yang
00:04:32dapat membangun dan menerapkan aplikasi apa pun di stack apa pun langsung dari lingkungan Anda. Anda dapat membawa
00:04:36langganan Anda sendiri untuk menjalankan model sesuai biaya menggunakan akun ChatGPT, Claude, atau Gemini Anda yang sudah ada,
00:04:41bahkan GitHub Copilot. Ini dibangun untuk menangani aplikasi apa pun di stack apa pun. Anda tidak terbatas hanya pada web.
00:04:47Anda dapat membangun dan menerapkan semuanya, mulai dari aplikasi seluler dan ekstensi Chrome hingga agen AI yang kompleks
00:04:52dan bot Slack. Lihat hasil bangun ini. Pengaturan OpenClaw yang berfungsi penuh mengelola logika tingkat perangkat keras yang kompleks,
00:04:57terminal Bloomberg fungsional yang memproses data siaran langsung besar-besaran secara real-time,
00:05:02dan aplikasi seluler asli seperti pengidentifikasi bangunan ini yang memanfaatkan umpan kamera perangkat Anda
00:05:07secara langsung. Klik tautan di komentar yang disematkan dan mulailah membangun. Plus, gunakan kode March 15 untuk
00:05:12diskon 15% untuk paket Anda. Sama seperti Anda, kami juga ingin kaya. Dan salah satu caranya adalah dengan melihat celah di
00:05:17pasar. Dan saat itulah kami menemukan ide emas ini—Grinder, tapi untuk kuda. Tapi bercanda saja,
00:05:22membangun produk skala besar membutuhkan banyak alat MCP karena mereka memiliki banyak dependensi
00:05:27dan mereka membuat jendela konteks penuh dengan cepat. Kami menghubungkan agen ke MCP Superbase menggunakan MCP to CLI,
00:05:34karena itu adalah infrastruktur backend yang kami gunakan. Sekarang Anda tidak perlu mengonfigurasi
00:05:38apa pun secara manual karena skill yang kita instal tadi. Skill itu menangani semuanya sendiri
00:05:43dan mengonfigurasi MCP untuk Anda. Tapi sebelum langsung menginstalnya, Anda perlu mendapatkan
00:05:47token akses dari MCP mana pun yang Anda gunakan. Karena jika tidak, Anda akan mengalami
00:05:52error seperti yang kami alami, setelah itu kami membuat token akses kami dan memberikannya kepada Claude untuk menambahkannya.
00:05:57Setelah dikonfigurasi dengan benar, Anda akan melihat alat-alat yang tersedia untuk digunakan. Sekarang Anda mungkin berpikir
00:06:01bahwa jika alat ini berjalan sebagai perintah bash, tidak aman untuk memiliki data sensitif seperti kunci API dan
00:06:06token akses di dalamnya karena bisa terekspos saat proses didaftar. Tetapi alat ini menambahkan
00:06:11lapisan perlindungan. Ia tidak menempatkan data sensitif dalam argumen baris perintah. Sebaliknya, ia menanganinya
00:06:15melalui variabel lingkungan, atau mereferensikan jalur file tempat token akses disimpan,
00:06:21atau menggunakan secret manager yang memasukkannya saat runtime. Jadi aman untuk dijalankan. Mirip dengan
00:06:26koneksi Superbase, kami menghubungkan MCP GitHub untuk kontrol versi, MCP Puppeteer untuk pengujian browser,
00:06:32dan MCP Context Seven untuk memberikan dasar bagi agen dengan dokumentasi yang tepat sehingga
00:06:37ia bekerja dengan dokumen yang diperbarui. Setelah semua MCP terhubung, kami meminta Claude untuk memverifikasi semuanya.
00:06:42Ia mengonfirmasi bahwa kami memiliki empat MCP yang terhubung, total 78 alat dalam kasus kami. Juga, jika Anda
00:06:47menikmati konten kami, pertimbangkan untuk menekan tombol hype karena itu membantu kami membuat lebih banyak konten
00:06:52seperti ini dan menjangkau lebih banyak orang. Sekarang setelah kami benar-benar terhubung, saatnya untuk mulai
00:06:57mengimplementasikan aplikasi secara bertahap. Kami mulai dengan menghubungkan kode sisi klien ke backend
00:07:02Superbase. Saat Claude menjalankan perintah MCP to CLI untuk membuat proyek, kami melihat bahwa ia tidak memasukkan
00:07:07token akses secara langsung ke dalam panggilan alat. Sebaliknya, ia merujuk ke .env.local kami di
00:07:12tingkat proyek untuk token tersebut. Ia membuat proyek, menyiapkan segalanya, dan menambahkan logika
00:07:17untuk menghubungkan dalam kode. Tapi kami melihat bahwa ia menggunakan file middleware untuk logika penyegaran sesi
00:07:22dan seharusnya tidak menggunakan itu karena sudah usang. Versi baru Next.js menggunakan
00:07:27proksi dan kami tahu ini akan memberikan error saat kami benar-benar menjalankan aplikasi. Ini menunjukkan bahwa
00:07:31menghubungkan alat saja tidak cukup untuk membuat agen mendengarkan alat tersebut dan benar-benar menggunakannya saat
00:07:36dibutuhkan. Jadi kami membuat file Claude.md dan menyuruhnya menggunakan MCP Context Seven sebelum menulis
00:07:42kode apa pun. Jadi ini tidak akan terjadi lagi. Dengan begitu ia tahu bahwa ia harus merujuk ke MCP Context Seven
00:07:47sebelum implementasi. Setelah selesai menambahkan tabel dan menyiapkan autentikasi di Superbase,
00:07:52kami menunjukkan peringatan middleware yang usang kepada Claude agar ia bisa memperbaikinya. Setelah kami
00:07:57menyuruhnya, ia akhirnya menggunakan MCP Context Seven untuk menarik dokumentasi dan menyelesaikan masalah tersebut
00:08:03dengan benar. Namun saat kami mengeksplorasi alat ini lebih jauh, kami menemukan bahwa ada cara yang lebih baik
00:08:07untuk menangani masalah ini daripada membuat file Claude.md. Skill lebih baik karena
00:08:11deskripsinya dimuat langsung ke dalam konteks agen. Jadi ia sudah tahu alat apa yang
00:08:16tersedia dan kapan harus menggunakannya, daripada kita hanya menaruh instruksi ke dalam Claude.md dan berharap
00:08:21ia membacanya. Jadi kami memintanya untuk membuat skill untuk semua MCP yang telah kami hubungkan. Claude kemudian
00:08:26membuat skill untuk setiap MCP. Masing-masing merinci alat apa yang dimilikinya, cara menggunakannya, dan kapan harus menggunakannya.
00:08:32Dengan itu, kami beralih ke masalah berikutnya. Tapi apa yang kami miliki masih jauh dari fungsional.
00:08:36Umpan balik dari para kuda mengatakan bahwa mereka mulai tidak sabar karena tidak bisa mengobrol
00:08:41langsung di platform. Jadi kami meminta Claude untuk membuat fitur chat fungsional untuk proyek tersebut di atas
00:08:46UI-nya. Saat kami mengujinya sendiri, pesan tidak termuat dan hanya menunjukkan layar pemuatan. Jadi kami
00:08:51memintanya menggunakan MCP Puppeteer untuk menguji alur pesan. Kami menyuruhnya memeriksa dirinya sendiri karena
00:08:56agen yang bisa mengklik, menggulir, dan berinteraksi dengan UI-nya sendiri bisa menangkap hal-hal yang tidak akan pernah tertangkap oleh tinjauan kode statis.
00:09:01Untuk tujuan pengujian, ia membuat dua pengguna. Tetapi ia tidak dapat mempertahankan data sesi di seluruh
00:09:06panggilan alat karena masing-masing menjalankan instans browser baru. Jumlah alat yang digunakannya dan waktu
00:09:10yang dihabiskan untuk bekerja di headless browser membuat kami menyadari sesuatu. Opsi yang lebih baik adalah
00:09:15membiarkan MCP menanganinya. Itu jauh lebih cepat dan memakan waktu jauh lebih sedikit daripada tujuh menit yang kami buang untuk
00:09:21tugas sederhana seperti itu. Kami lebih suka menggunakan ekstensi browser milik Claude yang bekerja lebih baik dengan
00:09:25kapabilitas lebih banyak dan mampu mempertahankan sesi lebih baik untuk pengujian end-to-end seperti ini. Dan
00:09:30MCP berjalan sebagai proses yang persisten, itulah sebabnya mereka mampu mempertahankan status di seluruh
00:09:35sesi. Alat ini juga menyediakan kontrol atas format output seperti JSON dan output mentah. Ia juga
00:09:40mendukung Toon, format pengodean efisien token untuk konsumsi LLM. Saat kita bekerja dengan MCP seperti
00:09:46Context 7, mereka biasanya mengembalikan potongan output yang sangat besar langsung ke jendela konteks. Untuk
00:09:51mencegah hal itu, kami menambahkan instruksi di file Claude.md bahwa setiap kali ia menggunakan MCP Context 7, ia harus menggunakan
00:09:57format Toon untuk output. Ini adalah format yang efisien karena menggabungkan indentasi dan daftar gaya CSV,
00:10:02memadatkan informasi besar menjadi potongan yang jauh lebih kecil dibandingkan dengan JSON dan YAML. Dengan
00:10:07cara ini Anda tidak membuang token secara percuma. Tapi kemajuan terbesar datang dari sesuatu yang
00:10:12bahkan tidak mungkin dilakukan ketika MCP ditangani secara asli oleh agen. Jika Anda ingat,
00:10:16Cursor merilis alur kerja pengeditan konteks di dalam produknya. Mereka memperlakukan hasil MCP sebagai file dan
00:10:22membiarkan agen menggunakan skrip bash seperti grep untuk pencocokan pola guna mengekstrak data. Kami membahasnya di
00:10:27video sebelumnya. Kami mencoba mengimplementasikan ide ini di agen pengodean lain tetapi karena MCP ditangani
00:10:32secara asli oleh agen, kami tidak bisa mendapatkan banyak hasil. Tapi sekarang dengan CLI ini, hal itu mungkin dilakukan karena
00:10:37MCP diperlakukan sebagai alat perintah bash. Jadi kami menambahkan instruksi di file Claude.md bahwa setiap kali
00:10:43alat MCP menghasilkan output yang besar, alih-alih memuatnya ke jendela konteks, ia harus
00:10:49mengalihkannya ke file di jalur yang kami tentukan. Kami melacak kemajuan proyek ini melalui
00:10:54file progress.json. Setelah menambahkan instruksi, kami meminta Claude untuk mengimplementasikan satu fitur dari
00:10:59daftar tersebut. Ia kemudian menggunakan MCP Context 7 untuk panggilan alat, tetapi alih-alih membuang output ke jendela
00:11:05konteks, ia menyalurkannya ke sebuah file dan menggunakan grep untuk mengekstrak data serta menyelesaikan implementasinya.
00:11:10File Claude.md dengan semua praktik terbaik untuk menggunakan alat ini tersedia di AI Labs Pro. Bagi
00:11:16mereka yang belum tahu, ini adalah komunitas yang baru saja kami luncurkan di mana Anda mendapatkan templat siap pakai
00:11:20yang dapat Anda pasang langsung ke proyek Anda untuk video ini dan semua video sebelumnya. Jika Anda merasa
00:11:25apa yang kami lakukan bernilai dan ingin mendukung saluran ini, inilah cara terbaik untuk melakukannya. Tautannya ada di
00:11:29deskripsi. Itu membawa kita ke akhir video ini. Jika Anda ingin mendukung saluran ini dan
00:11:33membantu kami terus membuat video seperti ini, Anda dapat melakukannya dengan menekan tombol super thanks di bawah.
00:11:38Seperti biasa, terima kasih telah menonton dan sampai jumpa di video berikutnya.