Penjelasan Model Context Protocol
Jika Anda menghubungkan LLM ke database atau API, Anda menulis kode penghubung (glue code). Anda menulisnya untuk satu model. Kemudian Anda menulisnya lagi untuk model berikutnya. Hal ini menciptakan kekacauan integrasi.
Model Context Protocol (MCP) memperbaiki masalah ini. Ia bertindak seperti port USB-C untuk AI. Alih-alih menggunakan kabel khusus untuk setiap perangkat, semua orang menggunakan satu konektor standar.
MCP mengubah perhitungan dari M x N integrasi menjadi M + N.
- Penulis tool menulis satu server MCP.
- Penulis aplikasi menambahkan satu klien MCP.
- Host apa pun yang mendukung MCP dapat menggunakan server apa pun.
Arsitekturnya memiliki tiga peran:
• Host: Aplikasi AI yang Anda gunakan, seperti Claude Code atau IDE. Ia memutuskan server mana yang akan dihubungkan. • Client: Konektor di dalam host. Ia menjaga koneksi ke server. • Server: Program yang Anda bangun. Ia mengekspos tools, data, atau prompts.
Anda menggunakan tiga primitif utama:
- Tools: Fungsi yang dipanggil model untuk mengambil tindakan, seperti mengirim email atau melakukan kueri ke database.
- Resources: Data read-only yang ditarik aplikasi ke dalam konteks, seperti file atau log.
- Prompts: Templat yang dapat digunakan kembali untuk membantu pengguna memicu tugas tertentu.
Anda dapat membangun server dalam Python menggunakan SDK FastMCP. Berikut adalah contoh sederhananya:
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("demo-tools")
@mcp.tool()
def word_count(text: str) -> int:
"""Count the words in a text."""
return len(text.split())
@mcp.resource("notes://team")
def team_notes() -> str:
"""Expose team notes."""
return "Release freeze starts Friday."
@mcp.prompt()
def code_review(language: str, code: str) -> str:
"""Template for reviewing code."""
return f"Review this {language} code: {code}"
if __name__ == "__main__":
mcp.run()
Saat Anda membangun server, ingatlah aturan-aturan ini:
- Keamanan: Gunakan persetujuan pengguna untuk tools yang bersifat destruktif. Validasi semua argumen.
- Konteks: Jaga agar deskripsi tool tetap singkat. Deskripsi yang panjang akan menghabiskan anggaran token Anda.
- Kesalahan: Kembalikan pesan yang jelas agar model dapat memperbaiki kesalahannya sendiri.
MCP menjadikan tools sebagai aset yang dapat digunakan kembali. Tulis sekali. Biarkan setiap model menggunakannya.
Sumber: https://dev.to/galian/model-context-protocol-explained-build-your-first-mcp-server-in-python-ian
Komunitas belajar opsional: https://t.me/GyaanSetuAi