مسیر موضوعی

پروتکل کانتکست مدل (MCP)

Model Context Protocol (MCP)

سیستم‌های MCP بی‌وضعیت را از بسته‌های JSON-RPC تا درگاه‌های انتشار انطباق با استاندارد، بسازید، ایمن‌سازی و اعتبارسنجی کنید و به کار بگیرید.

پیش از شروع

شروع سریع (۱۰ دقیقه): یک متن ارتباطات بستر انتقال از نوع بی‌وضعیت برای MCP را اجرا کنید و متاداده‌ای که باعث می‌شود هر درخواست به صورت مستقل قابل‌تفسیر باشد را شناسایی کنید. شروع ←

درس‌ها به ترتیب

  1. مبانی MCP: درخواست‌های بی‌وضعیت و JSON-RPCخروجی: متن ارتباطات بستر انتقال شامل دو درخواست مستقل که هر کدام نسخه‌ی پروتکل و قابلیت‌های کلاینت را در فیلد params._meta حمل می‌کنند. نتیجه‌ی کامل سرور/شناسایی به همراه خطای عدم پشتیبانی از نسخه با کد -32022.فاز 13 · درس 6 · ۵۵ دقیقه
  2. ساخت سرور MCP بی‌وضعیت با پایتون و تایپ‌اسکریپتخروجی: دمویی از سمت سرور که قابلیت‌های شناسایی، tools/list و tools/call را بدون نگهداری وضعیت پروتکل در سطح اتصال نمایش می‌دهد. نتیجه‌ی یک تست قطعی از پیاده‌سازی پایتون، به همراه دموی تایپ‌اسکریپت در صورت در دسترس بودن اجراکننده‌ی تایپ‌اسکریپت.فاز 13 · درس 7 · ۸۵ دقیقه
  3. ساخت کلاینت MCP: کشف، مسیریابی و سازگاری با سرورهای قدیمیخروجی: متن ارتباطات کلاینت که بر اساس متاداده‌ی هر درخواست مسیر نوین را انتخاب کرده و دوره‌ی پروتکل برگزیده را ثبت می‌کند. یک ردگیری محاسبات مجزا برای طرح پشتیبان موروثی (legacy fallback) که وضعیت مقداردهی اولیه را وارد مسیر درخواست‌های نوین نمی‌کند.فاز 13 · درس 8 · ۸۵ دقیقه
  4. بستر انتقال در پروتکل MCP: تفاوت stdio و Streamable HTTP مدرنخروجی: یک تبادل قاب‌بندی‌شده‌ی بایتی در stdio و یک تبادل POST /mcp همراه با وضعیت و نوع محتوای مشاهده‌شده. رد شدن درخواست پیش از مذاکره‌ی نسخه یا توزیع، به دلیل عدم تطابق هدر با بدنه (header-to-body parity).فاز 13 · درس 9 · ۶۵ دقیقه
  5. منابع و پرامپت‌ها در MCP: کانتکست آدرس‌پذیر برای سرورهای بی‌وضعیتخروجی: متن ارتباطاتی که منبع مشخص‌شده با URI را لیست کرده و می‌خواند و یک پرامپت را به همراه آرگومان‌های اعتبارسنجی‌شده رندر می‌کند. تعیین صریح دامنه کش، TTL، ترتیب‌بندی قطعی و انتخاب جزء سازنده برای همان مثال.فاز 13 · درس 10 · ۶۰ دقیقه
  6. مهاجرت از Sampling به الگوی بی‌وضعیت MRTR در پروتکل MCPخروجی: یک درخواست ورودی MRTR، نتیجه‌ی ارائه‌دهنده در سمت کلاینت و تلاش مجدد برای اجرای عملیات اولیه با یک شناسه‌ی درخواست جدید. شواهدی مبنی بر این که سرور هرگز درخواست مستقل JSON-RPC که آغازگر آن خودش باشد ارسال نمی‌کند.فاز 13 · درس 11 · ۷۵ دقیقه
  7. تعیین دامنه‌ی صریح و استخراج بی‌وضعیت ورودی در پروتکل MCPخروجی: درخواستی که ریشه‌های مجاز آن به جای وضعیت ذخیره‌شده‌ی کلاینت، ورودی‌های صریح عملیات هستند. یک پاسخ استخراج ورودی (Elicitation) MRTR که پیش از تلاش مجدد عملیات اصلی، با اسکیما اعتبارسنجی می‌شود.فاز 13 · درس 12 · ۶۰ دقیقه
  8. افزونه‌ی Tasks در MCP: اجرای کارهای ماندگار روی هسته‌ی بی‌وضعیتخروجی: یک ردگیری محاسبات پایا از وظایف که مواردی مانند ایجاد، استعلام دوره‌ای وضعیت، لغو و نتیجه‌ی نهایی را در قالب درخواست‌های مستقل پوشش می‌دهد. شناسه‌های وظیفه، رفتارهای بازنگری یا پایاپای (idempotency)، فهرست‌های قطعی و تطابق هدر درخواست که مستقل از وضعیت پروتکل ثبت می‌شوند.فاز 13 · درس 13 · ۹۰ دقیقه
  9. پیاده‌سازی MCP Apps روی پروتکل بی‌وضعیتخروجی: نتیجه‌ی یک ابزار که به یک منبع مشخص UI ارجاع می‌دهد و داده‌های پروتکل را از وضعیت رابط کاربری (view state) تفکیک می‌کند. مرز ثبت‌شده‌ی پیام‌های هاست به ویو همراه با پیام‌های مجاز، پیام‌های ردشده و بدون هیچ‌گونه فرضِ اختیار ضمنی (ambient authority).فاز 13 · درس 14 · ۷۵ دقیقه
  10. امنیت در پروتکل MCP: مسموم‌سازی متادیتا، مسیریابی و الگوی MRTRخروجی: توصیف‌کننده‌ای مسموم یا دچار دریفت که پیش از مسیریابی ابزار و اعطای مجوز رد می‌شود. مستندسازی مدل تهدید که متاداده‌های غیرقابل‌اعتماد، اختیارات درخواستی، مرز ساندباکس و اعتبارسنجی نتایج را از هم تفکیک می‌کند.فاز 13 · درس 15 · ۶۰ دقیقه
  11. مجوزدهی در MCP: روش CIMD، تفکیک صادرکننده، PKCE و ارتقای دامنهخروجی: یک ردگیری کامل مجوز با شناسایی متاداده‌ی وابسته به صادرکننده، PKCE، پیوند منابع، اعتبارسنجی مخاطب (audience) و دامنه‌های حداقل دسترسی. تصمیم پله‌ای امنیتی (step-up) که پیش از اجرای کنترل‌کننده، اختیارات ناکافی را رد می‌کند.فاز 13 · درس 16 · ۹۰ دقیقه
  12. احراز هویت MCP در پروداکشن: ثبت و توکن‌های مقید به صادرکنندهخروجی: یک ردگیری ثبت‌نام کلاینت وابسته به صادرکننده و اعتبارسنجی توکن، به گونه‌ای که هیچ متاداده‌ی شناسایی بین صادرکنندگان مختلف قابل‌اعتماد تلقی نشود. شواهد احراز هویت مستقل و اعطای مجوز عملیات واقعی برای دو درخواست متوالی.فاز 13 · درس 18 · ۹۰ دقیقه
  13. درگاه بی‌وضعیت MCP و پذیرش در رجیستریخروجی: پذیرش یا رد یک گزینه‌ی ریجستری بر اساس توصیف‌کننده‌ی تغییرناپذیر، منشأ و سندیت و شواهد خط‌مشی. یک ردگیری محاسبات در گیت‌وی که مسیریابی قطعی، مجوز در سطح درخواست و دقیقاً همان اسنپ‌شات خط‌مشی استفاده‌شده را ثبت می‌کند.فاز 13 · درس 17 · ۷۵ دقیقه
  14. قراردادها و محتوای ابزار در پروتکل MCPخروجی: توصیف‌کننده‌ی ابزاری که پذیرش آن صرفاً پس از انطباق کامل اسکیما، حاشیه‌نویسی‌ها، نگاشت‌های هدر بستر انتقال و پایاهای بلوک محتوا صورت می‌گیرد. یک ردگیری با داده‌های حساس پاک‌سازی‌شده در مرز HTTP که کدگذاری پارامتر-هدر و مقایسه‌ی دقیق هدر با بدنه را پیش از ارسال اثبات می‌کند.فاز 13 · درس 28 · ۱۲۰ دقیقه
  15. قابلیت اطمینان، لغو عملیات و کنترل جریان داده در MCPخروجی: چهار چینش قطعی از لغو، تکمیل، مهلت زمانی (deadline) و قطع اتصال بدون تکیه بر هماهنگی مبتنی بر توقف موقت (sleep). دقیقاً یک خروجی نهایی برای هر درخواست، رفتار محدود صف و مدیریت رخدادهای دیرهنگام برای تمامی شرایط رقابتی.فاز 13 · درس 29 · ۱۲۰ دقیقه
  16. امنیت زنجیره تأمین در رجیستری MCP: پذیرش، انحراف و بازگردانیخروجی: یک مورد تداخل فضای نام و دریفت توصیف‌کننده که پیش از انتشار در ریجستری رد شده است. تصمیم‌گیری برای تغییر وضعیت و بازگشت به عقب، پیوندخورده به هویت دست‌سازه‌ی تغییرناپذیر، منشأ و سندیت و شواهد خط‌مشی.فاز 13 · درس 30 · ۹۰ دقیقه
  17. مهندسی انطباق با پروتکل MCP: نسخه‌بندی، شواهد و فرآیند انتشارخروجی: ماتریس انطباق با استاندارد که دوره‌ی پروتکل، رفتار فیلدهای افزوده، دگرگونی SDK و حفظ پروکسی را در هر مرز ثبت می‌کند. تصمیم انتشار مبتنی بر متن ارتباطات استانداردشده‌ی بستر انتقال، تست‌های قطعی و یک گزارش شکست صریح برای تمامی موارد ردشده.فاز 13 · درس 31 · ۱۰۰ دقیقه

درس‌های اختیاری

  1. پروژه‌ی پایانی: اکوسیستم ابزارهای بی‌وضعیتفاز 13 · درس 23 · ۱۲۰ دقیقه · اختیاری