Panduan praktis tentang Retrieval-Augmented Generation (RAG) dan Model Context Protocol (MCP), apa itu, bedanya gimana, dan cara kerjanya bareng sama contoh.
Sistem AI modern tuh sering nemuin dua masalah besar:
Dua konsep ini jadi kuncinya: Retrieval-Augmented Generation (RAG) dan Model Context Protocol (MCP). Mereka related tapi ngisi problem yang beda. Ngerti peran masing-masing bakal ngebantu lo paham gimana cara bikin agen AI sekarang.
Retrieval-Augmented Generation (RAG) itu teknik buat ngejagain jawaban AI biar lebih akurat, caranya ngambil info yang relevan dari knowledge base luar—misalnya dokumen, database, atau API—sebelum jawab.
Dengan gini, AI bisa go beyond data training yang statis, ngurangin halusinasi, dan kasih jawaban yang up-to-date plus kaya konteks.
LLM emang powerful, tapi dia cuma bisa jawab berdasarkan apa yang dilatihin doang. Nah, pake RAG, lo bisa connect dia ke data sendiri: kebijakan kantor, paper riset, atau dokumentasi customer. Ini bikin dia way more useful buat real-world scenarios.
Model Context Protocol (MCP) itu protokol komunikasi standar yang nentuin gimana cara aplikasi AI (client) bisa interaksi sama service luar (server).
Ini bukan model atau teknik, tapi set of rules. MCP make JSON-RPC (2.0) buat handle request dan response, yang artinya setiap interaksi antara LLM (client) sama server MCP ikut format JSON yang terstruktur buat remote procedure call.
Contoh request dan response JSON-RPC 2.0:
// Request: Claude (MCP client) minta server MCP GitHub buat bikin pull request
{
"jsonrpc": "2.0",
"id": 1,
"method": "create_pull_request",
"params": {
"repo": "fwwz/awesome-app",
"branch": "feature-x",
"title": "Tambah fitur baru"
}
}
// Response: Server MCP GitHub balikin hasilnya
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"url": "https://github.com/fwwz/awesome-app/pull/42",
"status": "success"
}
}In other words:
| Fitur | RAG (Retrieval-Augmented Generation) | MCP (Model Context Protocol) |
|---|---|---|
| Konsep Inti | Teknik buat kasih dasar jawaban LLM sama data luar. | Protokol buat connect LLM ke tool, API, atau data source luar. |
| Tujuan Utama | Ngeboost akurasi dan ngurangin halusinasi. | Kasih bridge yang aman, extensible, dan standar antara LLM sama sistem luar. |
| Cara Kerja | 1. Ambil dokumen relevan dari knowledge base. 2. Add ke context model. 3. Generate jawaban yang grounded. | 1. LLM (client) kirim request JSON-RPC. 2. Server MCP panggil service/API di belakangnya. 3. Server balikin hasil ke client. |
| Analogi | Siswa nulis laporan: ke perpustakaan, baca referensi, baru tulis. | Adaptor daya universal: connect aman ke stopkontak apa aja (tool atau API). |
| Hubungan | RAG itu pattern yang bisa make MCP sebagai fondasinya. | MCP itu framework yang bisa enable RAG dan banyak aplikasi lainnya. |
Bayangin ada AI assistant yang bisa jawab pertanyaan tentang dokumentasi kantor lo.
Tanpa MCP Lo harus nulis custom code yang connect AI langsung ke vector database. Ini brittle, susah di-maintain, dan rawan security wise.
Pake MCP
User: "Apa kebijakan liburan kita?"
Claude (MCP client):
→ kirim request { "action": "search_docs", "params": {"query": "kebijakan liburan"} }
MCP Documentation Server:
→ query knowledge base internal
→ balikin dokumen kebijakan HR yang relevan
Claude:
→ pake context yang di-return buat generate jawaban yang groundedNah ini RAG system yang di-build di atas MCP.
MCP nggak cuma buat RAG doang. Misalnya, kalau lo mau Claude buka pull request di GitHub:
Claude (MCP client):
→ kirim request { "action": "create_pull_request", "params": {
"repo": "fwwz/awesome-app",
"branch": "feature-x",
"title": "Tambah fitur baru"
}}
MCP GitHub Server:
→ translate request jadi API call GitHub REST
→ otentikasi secara aman
→ bikin pull request
→ balikin link PR
Claude:
→ jawab "Aku udah buka pull request nih: <link>"Daripada nulis integrasi custom buat tiap LLM, MCP kasih interface standar yang bisa dipake model apa aja yang compatible. Contohnya, begitu lo punya server GitHub MCP, Claude, GPT-4, atau LLM lain yang MCP-enabled bisa interaksi sama GitHub lewat endpoint yang sama.
Lo bisa liat demo praktisnya di post Reddit ini, di mana Claude interaksi lancar sama API GitHub lewat MCP.
Atau lo bisa make model lokal pake Ollama. Artikel ini kasih panduan step-by-step detail tentang cara connect Ollama sama server MCP.
Standarisasi ini nunjukin dua benefit utama MCP:
Server MCP bisa expose banyak tool beda:
Dengan ngabstraksi beda API, MCP bikin agent AI bisa operate lebih kayak automation script canggih yang bisa mikir.
RAG dan MCP itu bukan ide yang bersaing, mereka saling melengkapi.
Makin berkembangnya AI agent, bakal makin banyak tuh peran MCP buat connect LLM ke dunia nyata, dengan RAG sebagai salah satu aplikasi terpentingnya.