𝗠𝗼𝗱𝗲𝗹 𝗖𝗼𝗻𝘁𝗲𝘅𝘁 𝗣𝗿𝗼𝘁𝗼𝗰𝗼𝗹-এর ব্যাখ্যা

বারবার একই ইন্টিগ্রেশন কোড লেখা বন্ধ করুন।

আপনি যদি একটি LLM-কে কোনো ডাটাবেস বা API-এর সাথে যুক্ত করেন, তবে প্রায়ই প্রতিটি নতুন মডেলের জন্য আপনাকে কাস্টম glue code লিখতে হয়। এটি একটি বিশৃঙ্খলা তৈরি করে। শেষ পর্যন্ত আপনাকে অনেকগুলো টুলের জন্য অনেকগুলো কানেকশন ম্যানেজ করতে হয়।

Model Context Protocol (MCP) এই সমস্যার সমাধান করে। এটি AI-এর জন্য একটি USB-C পোর্টের মতো কাজ করে। আপনি একবার একটি টুল তৈরি করবেন, এবং যেকোনো মডেল সেটি ব্যবহার করতে পারবে।

এর আর্কিটেকচারে তিনটি অংশ রয়েছে:

• Host: আপনি যে অ্যাপটি ব্যবহার করেন, যেমন Claude Code বা একটি IDE। • Client: হোস্টের ভেতরে থাকা কানেক্টর। • Server: ডাটা বা টুল প্রকাশ করার জন্য আপনি যে প্রোগ্রামটি তৈরি করেন।

আপনি তিনটি প্রধান primitive ব্যবহার করে একটি MCP server তৈরি করতে পারেন:

  • Tools: মডেল কাজ করার জন্য যে ফাংশনগুলো কল করে, যেমন ইমেল পাঠানো।
  • Resources: অ্যাপ যে রিড-অনলি (read-only) ডাটা সংগ্রহ করে, যেমন একটি log file।
  • Prompts: নির্দিষ্ট কাজের জন্য পুনরায় ব্যবহারযোগ্য টেমপ্লেট।

FastMCP SDK ব্যবহার করে Python-এ কীভাবে একটি বেসিক সার্ভার তৈরি করতে হয় তা নিচে দেওয়া হলো:

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("demo-tools")

@mcp.tool() def word_count(text: str) -> int: """Count 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 code reviews.""" return f"Review this {language} code: {code}"

if name == "main": mcp.run()

এই কোডটি আপনার হয়ে জটিল যোগাযোগ (communication) সামলায়। আপনার docstrings গুলো মডেলের জন্য নির্দেশিকা (instructions) হিসেবে কাজ করে।

প্রোডাকশনের জন্য তিনটি টিপস:

  1. Security: ডাটা পরিবর্তন করে এমন কোনো টুল চালানোর আগে সবসময় ইউজারের অনুমতি নিন।
  2. Context: টুলের বর্ণনা ছোট রাখুন। লম্বা বর্ণনা টোকেন অপচয় করে।
  3. Errors: পরিষ্কার মেসেজ প্রদান করুন। একটি মডেল "User not found" এরর ঠিক করতে পারে, কিন্তু এটি সরাসরি কোড ক্র্যাশ (raw code crash) ঠিক করতে পারে না।

কাস্টম কানেক্টর তৈরি করা বন্ধ করুন। একবার একটি MCP server তৈরি করুন এবং প্রতিটি মডেলকে সেটি ব্যবহার করতে দিন।

Source: https://dev.to/galian/model-context-protocol-explained-build-your-first-mcp-server-in-python-ian