Dalam tutorial ini, Anda akan membuat [Model Context Protocol] yang sederhana (https://www.ibm.com/id-id/think/topics/model-context-protocol). (MCP) server yang mengekspos alat tunggal untuk mencari tutorial IBM. Dengan menggunakan kerangka kerja fastmcp dan pustaka permintaan, skrip mengunduh indeks JSON tutorial dari URL jarak jauh. Kemudian mencari kecocokan dengan kueri pengguna dan mengembalikan daftar hasil yang diformat dengan rapi. Anda juga akan menambahkan penanganan kesalahan untuk masalah jaringan, JSON yang buruk, dan masalah yang tidak terduga, menjadikan alat ini kuat dan ramah bagi pemula. Terakhir, Anda akan menjalankan server MCP sehingga dapat dihubungkan dan diuji dengan klien seperti Cursor.
Perusahaan dan pengembang perusahaan rintisan semakin mengembangkan solusi berbasis [kecerdasan buatan] (AI) generatif (https://www.ibm.com/id-id/think/topics/artificial-intelligence) . Untuk membuat solusi mereka lebih berguna, mereka membutuhkan informasi dan konteks terkini. [model] Machine learning(https://www.ibm.com/id-id/think/topics/ai-model) perlu berinteraksi dengan alat, [antarmuka pemrograman aplikasi] (https://www.ibm.com/id-id/think/topics/api)(APIs), kit pengembangan perangkat lunak (SDK) dan sistem front-end agar terjadi.
MCP menstandardisasi bagaimana konteks diteruskan di antara model dan sistem AI. Ini menyederhanakan koordinasi di [model bahasa besar] (https://www.ibm.com/id-id/think/topics/large-language-models) (LLM) dan sumber data eksternal dan alat. Analogi yang umum adalah untuk membayangkan MCP seperti port USB-C untuk LLM. Mereka membuat LLM jauh lebih berguna karena model ini memiliki akses ke kemampuan dan data yang bukan bagian dari pelatihan model. Kemampuan ini sangat berguna saat membangun [agen AI] (https://www.ibm.com/id-id/think/topics/ai-agents).
MCP dikembangkan oleh Anthropic dan diadopsi oleh penyedia AI besar termasuk OpenAI, Google DeepMind, dan industri yang lebih luas. Server ini menyediakan cara yang aman dan terstandardisasi bagi model AI untuk mengakses dan menggunakan data eksternal, sumber daya (seperti prompt), dan alat.
Lebih jauh lagi, lingkungan pengembangan terintegrasi (IDE) seperti Cursor dan Visual Studio Code juga telah mengadopsi MCP, memungkinkan asisten AI mereka mengakses server MCP untuk membuat penggunaannya lebih relevan dengan konteks dan ramah pengembang. Dibangun sebagai standar terbuka, organisasi menggunakan MCP untuk bertindak sebagai jembatan antara dunia stokastik AI generatif dan dunia deterministik sebagian besar sistem perusahaan yang ada saat ini. MCP menyediakan LLM dengan informasi kontekstual yang mirip dengan pola desain lain yang mulai muncul seperti retrieval augmented generation (RAG), [pemanggilan alat] (https://www.ibm.com/id-id/think/topics/tool-calling) dan agen AI.
Beberapa keuntungan menggunakan MCP dibandingkan dengan solusi lain ini meliputi:
- Skala: Server MCP dapat didefinisikan dan dihosting sekali dan digunakan oleh banyak sistem AI. Kapasitas ini membatasi kebutuhan untuk menentukan akses ke sumber data, sumber daya, dan alat AI yang sama untuk beberapa sistem AI generatif.
- Pengambilan data: Tidak seperti RAG di mana pengambilan data memerlukan preprocessing dan vektorisasi sebelum kueri, MCP bersifat dinamis dan memungkinkan fluktuasi dan pembaruan dari sumber informasi secara real-time.
- Kompleksitas: MCP cukup sederhana untuk diatur dan dimasukkan ke dalam aplikasi AI, seperti yang kami tunjukkan di sini. Anda dapat menggunakan file konfigurasi dengan mudah untuk membuat server MCP portabel di seluruh lingkungan.
- Tidak bergantung pada platform: Selain fakta bahwa Anda bisa membangun server MCP dengan Python, TypeScript, atau bahasa lainnya, server ini juga tidak terikat pada solusi LLM tertentu.
- Debug melalui model klien/server: Klien MCP mengirimkan permintaan ke server MCP, yang kemudian mengambil data yang diperlukan dari berbagai sistem dan sumber eksternal—apakah itu API, basis data, atau file lokal. Pendekatan terstruktur ini memastikan bahwa model AI menerima konteks yang konsisten dan relevan, yang mengarah ke output yang lebih akurat dan andal. MCP menggunakan JSON-RPC untuk mengodekan pesan dan mendukung 2 mekanisme transportasi, stdio dan HTTP streamable. Dalam iterasi protokol sebelumnya, juga mendukung HTTP dengan server-sent events (SSE)
Kebutuhan untuk terus mengikuti informasi terbaru yang dibutuhkan perusahaan Anda bisa menakutkan. MCP dapat membantu membangun konteks dan memasukkan informasi baru untuk kontrak saat kontrak dijalankan, informasi lama yang sedang didigitalkan namun belum tentu dapat dicerna, dan masih banyak lagi. Informasi tersebut dapat berupa informasi internal maupun eksternal, tetapi menambahkan konteks akan mengurangi kebutuhan yang memakan waktu untuk melatih ulang LLM agar dapat berguna.
Ada banyak server MCP jarak jauh yang tersedia serta banyak implementasi referensi dari github.com
Panduan langkah demi langkah ini dapat ditemukan di repositori GitHub kami bersama dengan server.py skrip yang akan Anda referensikan saat membuat server MCP Anda. Dalam tutorial ini kita akan membahas pembuatan server MCP khusus dasar yang dapat:
Untuk memfasilitasi pembuatan tutorial ini, kami telah membuat mekanisme yang memungkinkan server yang akan Anda bangun dapat dengan mudah mengonsumsi konten tutorial kami tanpa perlu autentikasi.
- Python 3.11 atau yang lebih baru diinstal di komputer Anda (periksa dengan menjalankan python3 --versi di terminal Anda).
- Modul venv bawaan tersedia (dilengkapi dengan Python di sebagian besar sistem; pada beberapa distribusi Linux Anda mungkin perlu menginstalnya secara terpisah dengan sudo apt install python3-venv).
- Terminal baris perintah (CLI):
- macOS atau Linux: gunakan aplikasi Terminal Anda (lingkungan ini mirip Unix).
- Windows: gunakan PowerShell atau prompt, dengan perbedaan sintaks kecil dijelaskan dalam langkah selanjutnya.
- Editor teks atau IDE pilihan Anda
Buat direktori baru dan cd ke dalamnya
Pastikan bahwa Anda berada di direktori
Catatan: Di Windows, Anda mungkin dapat mengganti
Setelah Anda membuat lingkungan virtual, Anda perlu mengaktifkannya dengan menggunakan perintah berikut
Setelah diaktifkan, shell Anda kemungkinan akan menunjukkan kepada Anda
Sekarang Anda perlu menginstal paket Python untuk
Instal
Setelah langkah ini selesai, Anda dapat memeriksa apakah fastMCP telah terinstal dengan benar dengan menjalankan perintah berikut
Jika Anda mendapatkan output yang mirip dengan di bawah ini, Anda telah menginstal fastMCP di lingkungan virtual Anda.
FastMCP version: 2.10.1
MCP version: 1.10.1
Python version: 3.11.13
Platform: macOS-15.5-arm64-arm-64bit
FastMCP root path: /opt/homebrew/lib/python3.11/site-packages
Sekarang Anda telah menginstal FastMCP, mari buat server MCP kita.
Buat file baru di direktori dan beri nama
Setelah Anda memiliki file, buka file tersebut dan salin serta tempelkan potongan kode berikut ini ke dalamnya
Mari kita lihat kode sebelumnya dan menjelaskan apa yang dilakukan bagian-bagian utama.
Skrip dimulai dengan mengimpor FastMCP, yang menyediakan kerangka kerja untuk membuat server MCP, dan permintaan, yang digunakan untuk mengunduh data melalui HTTP. Kami telah menambahkan konstanta
Kami kemudian membuat instans server MCP dengan
Kemampuan
Pencarian tidak sensitif terhadap huruf besar-kecil: kueri dikonversi menjadi huruf kecil, dan setiap judul tutorial dan URL juga diperkecil untuk pencocokan. Jika tutorial berisi istilah pencarian di judul atau URL, maka ditambahkan ke daftar hasil yang relevan.
Jika tidak ada tutorial yang cocok dengan pencarian, fungsi menampilkan pesan ramah yang menunjukkan bahwa tidak ada yang ditemukan. Jika ada kecocokan, fungsi ini akan membuat daftar bernomor yang diformat yang menampilkan judul, URL, tanggal, dan, jika ada, penulisnya. Pemformatan menggunakan huruf tebal bergaya Markdown untuk judul sehingga tampak menonjol di klien yang mendukungnya. Teks yang diformat akhir ditampilkan sebagai string tunggal.
Fungsi ini mencakup penanganan pengecualian yang ditargetkan:
Penangan
Setiap kesalahan menampilkan pesan deskriptif pada pemanggil alih-alih menghentikan program.
Di bagian bawah,
Sekarang setelah membangun server, Anda perlu mengaktifkannya di IDE sebelum Anda dapat menggunakannya. Ada banyak klien yang mendukung MCP dengan berbagai tingkat integrasi dengan protokol. Situs web resmi MCP menyediakan daftar lengkap contoh klien.
Jika Cursor telah diinstal, Anda dapat menambahkan server MCP dalam Cursor dengan mengikuti petunjuk ini.
Buka pengaturan Cursor dan arahkan ke Tool & Integrations. Pilih New MCP Server dan tempel ke file mcp.json yang dibuka Cursor di tab baru. Pastikan Anda mengganti <YOUR PATH> dengan direktori tempat Anda berada. Anda dapat menjalankan pwd di terminal Anda untuk mendapatkan jalur lengkap. Untuk informasi lebih lanjut tentang Cursor dan MCP, lihat dokumen Cursor.
{
"mcpServers": {
"tutorials": {
"command": "fastmcp",
"args": ["run <YOUR PATH>/ibmtutorialmcpserver/server.py"],
"env": {
}
}
}
}
Jika Anda adalah pengguna Microsoft VS Code, Anda dapat menambahkan server MCP dengan menggunakan instruksi yang ditautkan di sini. Pastikan Copilot diatur dalam VS Code sebelum melanjutkan.
Jika Anda ingin mengaktifkan server MCP dengan menggunakan file, buat file .vscode/mcp.json di direktori proyek ini dan salin dan tempel kode ini ke dalam file. Pastikan Anda mengganti <YOUR PATH> dengan direktori tempat Anda berada. Anda dapat menjalankan pwd di terminal Anda untuk mendapatkan jalur lengkap.
"servers": {
"IBM Tutorials": {
"type": "stdio",
"command": "fastmcp",
"args": [
"run",
"<YOUR PATH>/ibmtutorialmcpserver/server.py"
]
},
},
Sekarang setelah mengaktifkan server MCP Anda, mari jalankan server sehingga Anda dapat menggunakan alat yang dibuat di server.py. Jika Anda menggunakan VS Code, lihat dokumen ini.
Dalam obrolan IDE, saya akan bertanya “apa saja tutorial deret waktu IBM?” Berikut ini menunjukkan bahwa output diterima, tetapi respons Anda dapat bervariasi tergantung pada model yang digunakan dan IDE Anda.
Output:
Here are some IBM time series tutorials:
Time series forecasting with Lag-Llama (zero-shot learning)
Tutorial link
Predict overnight low temperatures using the Lag-Llama model in a zero-shot learning scenario.
Using the watsonx.ai Time Series Forecasting API to predict energy demand
Tutorial link
Predict energy demand with the watsonx.ai Time Series Forecasting API.
Authors: Aleksandra Kłeczek and Meredith Syed
Let me know if you want details or help with a specific tutorial.
Hebat! Agen tersebut mampu menggunakan alat
Dalam tutorial ini, Anda telah belajar membangun server MCP untuk menelusuri semua tutorial kami dengan menggunakan klien MCP apa pun yang Anda sukai. Anda membuat server MCP dengan alat pencarian tunggal yang mengambil indeks tutorial JSON jarak jauh, memfilter hasil berdasarkan istilah pencarian, dan menampilkannya dalam format yang dapat dibaca. Alat ini menggunakan fastmcp untuk mendaftar dan menjalankan alat, permintaan untuk mengambil data dan termasuk penanganan kesalahan untuk jaringan, penguraian, dan masalah yang tidak terduga. Saat dijalankan, server dapat dihubungkan oleh klien MCP untuk kueri langsung dari semua tutorial kami.
Bangun, terapkan, dan kelola asisten dan agen AI yang kuat yang mengotomatiskan alur kerja dan proses dengan AI generatif.
Bangun masa depan bisnis Anda dengan solusi AI yang dapat Anda percaya.
Layanan IBM Consulting AI membantu merancang ulang cara kerja bisnis dengan AI untuk transformasi.