106 lines
12 KiB
Markdown
106 lines
12 KiB
Markdown
# مشخصات درسنامه: استفاده از 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` یا سرور جستجو).
|
||
* **مسیر فایلهای کانفیگ چندسکویی در ۳ منوی کشویی جداگانه:**
|
||
* `<details><summary>مسیر کانفیگ در ویندوز (Windows)</summary> ... </details>`: مسیر `%APPDATA%\...` و نحوه اضافه کردن کانفیگ JSON.
|
||
* `<details><summary>مسیر کانفیگ در مکاواس (macOS)</summary> ... </details>`: مسیر `~/Library/Application Support/...`.
|
||
* `<details><summary>مسیر کانفیگ در لینوکس (Linux)</summary> ... </details>`: مسیر `~/.config/...`.
|
||
6. **مشاهده چراغ سبز ابزار در عمل:**
|
||
* تست پرسیدن یک سوال زنده از هوش مصنوعی و دیدن اینکه ایجنت چگونه ابزار متصل به MCP را فرامیخواند.
|
||
7. **کالاوتهای Quera:**
|
||
* `<details class="violet">`: چرا پروتکل MCP در سالهای ۲۰۲۵ و ۲۰۲۶ استانداردی شد که کل صنعت فناوری از جمله مایکروسافت، گوگل و استارتاپها روی آن اجماع کردند؟
|
||
* `<details class="green">`: قدرت صرفهجویی فایل `.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 (`<details class="violet">`):** چرا تمام شرکتهای بزرگ به سمت استاندارد MCP حرکت کردند؟
|
||
7. **تمرین عملی اول: ساخت فایل `.cursorrules` برای هدایت پروژه:**
|
||
* ایجاد فایل در ریشه پروژه.
|
||
* درج قوانین کدنویسی تمیز، زبان فارسی و فریمورکها.
|
||
8. **باکس نکته Quera (`<details class="green">`):** خلاص شدن همیشگی از یادآوریهای تکراری به هوش مصنوعی.
|
||
9. **تمرین عملی دوم: افزودن یک سرور کاربردی MCP در ادیتور:**
|
||
* مراحل منوی Settings در Cursor و Claude Code.
|
||
* مسیر فایلهای پیکربندی با منوهای کشویی سیستمعاملها (Windows, macOS, Linux).
|
||
10. **تست و تایید اتصال ابزار:** مشاهده فراخوانی موفق ابزار در چت با مدل.
|
||
11. **جمعبندی درسنامه:** مجهز شدن ایجنت شما به ابزارهای دنیای واقعی.
|
||
|
||
---
|
||
|
||
## ۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)
|
||
- [ ] تفاوت Skill (قوانین و پرامپتها) و MCP (پروتکل اتصال به ابزارها) به وضوح تبیین شده باشد.
|
||
- [ ] استعاره پورت جهانی USB-C برای درک ماهیت MCP در متن به کار رود.
|
||
- [ ] یک تمرین عملی قابل انجام ساخت `.cursorrules` به همراه محتوای نمونه قرار داده شود.
|
||
- [ ] مسیرهای کانفیگ برای ویندوز، مک و لینوکس در منوهای کشویی مجزا درج گردند.
|