# مشخصات درسنامه: استفاده از Skillها و MCPها (Skills & Model Context Protocol)
- **شناسه در سیلابس:** `L3.7`
- **فصل:** فصل ۳: راهاندازی محیط کار (Ch 3)
- **نوع محتوا:** 📘 درسنامه متنی
- **زمان تقریبی مطالعه:** ۱۵ دقیقه
- **پیشنیازهای مستقیم:** `L3.6` (آشنایی با Git و GitHub)
---
## ۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy)
دانشجو پس از مطالعهٔ این درسنامه باید بتواند:
- [ ] **درک کند (Understand):** تفاوت بنیادین میان یک مهارت پرامپتی (Skill یا فایلهای راهنما نظیر `.cursorrules`) و یک ابزار اجرایی تحت پروتکل MCP چیست.
- [ ] **درک کند (Understand):** پروتکل کانتکست مدل (Model Context Protocol - MCP) چگونه به عنوان استاندارد جهانی پورت USB-C برای اتصال هوش مصنوعی به دیتابیسها، وب و ابزارهای بیرونی عمل میکند.
- [ ] **بهکار ببندد (Apply):** یک فایل قوانین اختصاصی پروژه (`.cursorrules`) بسازد تا ایجنت هوش مصنوعی بدون نیاز به تکرار دستورات در هر پرامپت، استانداردهای کدنویسی و پاسخگویی را رعایت کند.
- [ ] **بهکار ببندد (Apply):** یک سرور ساده MCP (مانند سرور دریافت اطلاعات وب یا دسترسی به فایل) را در ادیتور Cursor یا ابزار Claude Code با استفاده از راهنماهای کشویی سیستمعاملها راهاندازی کند.
- [ ] **تحلیل/ارزیابی کند (Evaluate):** چه زمانی اضافه کردن یک مهارت یا سرور MCP جدید به ایجنت ضرورت دارد و چگونه از سنگین شدن بیمورد حافظه مدل جلوگیری شود.
---
## ۲. محدوده و مرزهای محتوا (Scope & Boundaries)
### آنچه باید پوشش داده شود (In-Scope):
1. **گذار از مدل منفعل به ایجنت مجهز به ابزار:**
* هوش مصنوعی معمولی فقط متن تولید میکند؛ هوش مصنوعی مجهز به MCP و Skill میتواند مستندات زنده اینترنت را بخواند، دادهها را از دیتابیس استعلام کند یا با ابزارهای سیستم شما تعامل داشته باشد.
2. **پروتکل فراگیر MCP چیست؟ (استعاره کابل USB-C جهانی):**
* چرا قبل از MCP، هر ابزاری روش اختصاصی و ناسازگاری برای اتصال به مدلها داشت.
* استاندارد باز توسعهدادهشده توسط Anthropic که اجازه میدهد یک سرور ابزار ساخته شود و تمام ایجنتها (Cursor، Claude Code، Antigravity) بتوانند با یک کلیک از آن استفاده کنند.
3. **تفاوت مهارتها (Skills / Rules) با پروتکل MCP:**
* **مهارتها (Skills):** تزریق دانش و شیوه انجام کار (Mental Workflow & Rules) در قالب اسناد متنی؛ مثل یاد دادن سبک پاسخگویی یا قوانین معماری پروژه.
* **سرورهای MCP (Tools):** دستها و چشمان زنده مدل؛ دسترسی به APIها، مرورگر، دیتابیس یا فایلهای سیستمی.
4. **پیادهسازی گامبهگام ۱: فایل قوانین پروژه (`.cursorrules`):**
* ساخت فایلی به نام `.cursorrules` در ریشه پروژه.
* قرار دادن قوانین طلایی: «کدها را همیشه با TypeScript بنویس»، «توضیحات را به زبان فارسی روان بده»، «قبل از تغییر فایلهای بزرگ تاییدیه بگیر».
5. **پیادهسازی گامبهگام ۲: راهاندازی یک سرور ساده MCP در ادیتور:**
* ورود به بخش Settings $\rightarrow$ Features $\rightarrow$ MCP در ادیتور Cursor یا فایل کانفیگ در Claude Code.
* افزودن یک سرور کاربردی ساده (مانند سرور خواندن وب `fetch` یا سرور جستجو).
* **مسیر فایلهای کانفیگ چندسکویی در ۳ منوی کشویی جداگانه:**
* `مسیر کانفیگ در ویندوز (Windows)
... `: مسیر `%APPDATA%\...` و نحوه اضافه کردن کانفیگ JSON.
* `مسیر کانفیگ در مکاواس (macOS)
... `: مسیر `~/Library/Application Support/...`.
* `مسیر کانفیگ در لینوکس (Linux)
... `: مسیر `~/.config/...`.
6. **مشاهده چراغ سبز ابزار در عمل:**
* تست پرسیدن یک سوال زنده از هوش مصنوعی و دیدن اینکه ایجنت چگونه ابزار متصل به MCP را فرامیخواند.
7. **کالاوتهای Quera:**
* ``: چرا پروتکل MCP در سالهای ۲۰۲۵ و ۲۰۲۶ استانداردی شد که کل صنعت فناوری از جمله مایکروسافت، گوگل و استارتاپها روی آن اجماع کردند؟
* ``: قدرت صرفهجویی فایل `.cursorrules`: با یک بار تعریف این فایل، دیگر نیاز نیست در هر پیام به هوش مصنوعی تذکر دهید چه سبکی کد بنویسد.
### آنچه نباید وارد آن شویم (Out-of-Scope):
- برنامهنویسی و کدنویسی یک سرور اختصاصی MCP از صفر با پایتون یا تایپاسکریپت (مبحث پیشرفته مربوط به فصلهای آخر).
- اتصال همزمان دهها سرور سنگین که باعث اشغال پنجره بافت شود.
---
## ۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms)
| اصطلاح انگلیسی | معادل فارسی مصوب | توضیح یکخطی ساده |
| :--- | :--- | :--- |
| Model Context Protocol (MCP) | پروتکل کانتکست مدل | استاندارد متنباز برای اتصال مستقیم و امن مدلهای هوش مصنوعی به ابزارها و منابع داده بیرونی |
| Skill / Project Rule | مهارت / قانون پروژه | راهنما و دستورالعمل دائمی ذخیرهشده در پروژه برای تنظیم سبک رفتار و خروجی ایجنت |
| .cursorrules | فایل قوانین کرسر | فایلی در ریشه پروژه که دستورات زمینه و سلیقه کدنویسی تیم را به هوش مصنوعی دیکته میکند |
| Tool Call / Tool Use | فراخوانی ابزار | توانایی مدل هوش مصنوعی در اجرای یک فرمان بیرونی و خواندن نتیجه آن برای حل مسئله کاربر |
| MCP Host & Client | میزبان و کلاینت MCP | ادیتور یا برنامهای (مانند Cursor یا Claude) که سرورهای MCP را مدیریت و به مدل متصل میکند |
---
## ۴. جایگاههای تصاویر و نمودارها (Visual & Diagram Placeholders)
> **راهنمای ایجنت نویسنده:** تمام تصاویر باید در پوشهٔ `images/` قرار گرفته و در قالب جدول تکخانهای وسطچین با کپشن تفصیلی درج شوند:
1. **تصویر کاور درس:** `images/cover.png`
* **موضوع:** کاور مدرن با تم تیره و نماد سوکت کابل نئونی USB-C که مغز هوش مصنوعی را به آیکونهای دیتابیس، گیتهاب، اینترنت و فایلها متصل میکند.
2. **استعاره کابل USB-C در پروتکل MCP:** `images/mcp-usb-analogy.png`
* **موضوع:** دیاگرام مفهومی: در گذشته هر پورت اختصاصی بود؛ اکنون کابل استاندارد MCP مدل را به انواع ابزارها متصل میسازد.
3. **تفاوت مهارت (Skill) و ابزار (MCP):** `images/skills-vs-mcps.png`
* **موضوع:** تصویر مقایسهای: سمت راست مهارت (مغز و دانشنامه قوانین در `.cursorrules`) در برابر سمت چپ MCP (دستها و ابزارهای فیزیکی برای لمس دنیای بیرون).
4. **پنل تنظیمات MCP در Cursor با چراغ سبز:** `images/cursor-mcp-settings.png`
* **موضوع:** اسکرینشات تمیز از صفحه تنظیمات MCP در Cursor که وضعیت سرورها را به رنگ سبز فعال (Active) نشان میدهد.
5. **نمونه فایل `.cursorrules` در عمل:** `images/cursorrules-demo.png`
* **موضوع:** نمایش کادر متنی نمونه دستورات یک پروژه استاندارد و تاثیر آن در پاسخ کوتاه، تمیز و فارسی ایجنت.
---
## ۵. بخشبندی و ساختار محتوایی پیشنهادی درسنامه (`README.md`)
1. **تیتر اصلی:** `# استفاده از Skillها و MCPها: دادن دست و چشمان بینا به هوش مصنوعی`
2. **مقدمه:** چرا پاسخهای ایجنت بدون دسترسی به ابزارهای بیرونی ناقص و تاریخگذشته است؟
3. **جدول کاور درس**
4. **پروتکل فراگیر MCP چیست؟ استعاره پورت USB-C دنیای هوش مصنوعی:** فلسفه پیدایش و اهمیت.
5. **تفاوت مهارتها (Skills) با ابزارهای اجرایی (MCPs):** شفافسازی تفاوت مفهوم قانون با ابزار کاربری.
6. **باکس نکته صنعتی Quera (``):** چرا تمام شرکتهای بزرگ به سمت استاندارد MCP حرکت کردند؟
7. **تمرین عملی اول: ساخت فایل `.cursorrules` برای هدایت پروژه:**
* ایجاد فایل در ریشه پروژه.
* درج قوانین کدنویسی تمیز، زبان فارسی و فریمورکها.
8. **باکس نکته Quera (``):** خلاص شدن همیشگی از یادآوریهای تکراری به هوش مصنوعی.
9. **تمرین عملی دوم: افزودن یک سرور کاربردی MCP در ادیتور:**
* مراحل منوی Settings در Cursor و Claude Code.
* مسیر فایلهای پیکربندی با منوهای کشویی سیستمعاملها (Windows, macOS, Linux).
10. **تست و تایید اتصال ابزار:** مشاهده فراخوانی موفق ابزار در چت با مدل.
11. **جمعبندی درسنامه:** مجهز شدن ایجنت شما به ابزارهای دنیای واقعی.
---
## ۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)
- [ ] تفاوت Skill (قوانین و پرامپتها) و MCP (پروتکل اتصال به ابزارها) به وضوح تبیین شده باشد.
- [ ] استعاره پورت جهانی USB-C برای درک ماهیت MCP در متن به کار رود.
- [ ] یک تمرین عملی قابل انجام ساخت `.cursorrules` به همراه محتوای نمونه قرار داده شود.
- [ ] مسیرهای کانفیگ برای ویندوز، مک و لینوکس در منوهای کشویی مجزا درج گردند.