👀 خبر در یک نگاه:
گیتهاب سرور MCP خود را متنباز کرد. این سرور به ابزارهای هوش مصنوعی امکان میدهد تا با دادههای گیتهاب بهصورت امن و بلادرنگ تعامل کنند، توهمات مدل را کاهش داده و جریانهای کاری هوشمند و خودکار را در محیطهای مختلف ممکن میسازد. |
تصور کنید در VS Code با حالت عامل Copilot در حال کدنویسی هستید؛ از آن میپرسید: «وضعیت PR شماره ۷۲ چیست؟» اما به جای دریافت جزئیات از GitHub، مدل پاسخی خیالی بر اساس زمینهای قدیمی یا حدس معنایی ارائه میدهد. پاسخ قانعکننده به نظر میرسد اما کاملا اشتباه است. مدلهای زبانی بزرگ (LLMها) در نهایت فقط به اندازه زمینهای که به آنها داده شده، خوب عمل میکنند. اگر این مدلها نتوانند به برنامهها و ابزارهای دیگر متصل شوند، به اندازه پتانسیلشان مفید نخواهند بود.
این مشکل اساسیای بود که مدل پروتکل زمینه (MCP) برای حل آن طراحی شد.
MCP چیست؟
MCP یک پروتکل باز است که نحوه اتصال و همکاری برنامههای LLM با ابزارها و منابع داده خارجی را استاندارد میکند. این پروتکل مشابه پروتکل سرور زبان (LSP) است، زیرا هر دو از معماری کلاینت-سرور پیروی میکنند، تعامل بین سیستمها را سادهسازی میکنند و الگوهای ارتباطی استانداردی ارائه میدهند.؛ در واقع، MCP نسخهای از LSP برای LLMها است.
حالا، GitHub سرور MCP خود را متنباز کرده است. این سرور بهعنوان یک رابط منبع حقیقت بین GitHub و هر LLM عمل میکند، توهمات مدل را کاهش میدهد و جریانهای کاری اتوماسیون جدیدی را ممکن میسازد.
معماری MCP
MCP بر پایه معماری کلاینت-سرور طراحی شده است، جایی که یک میزبان MCP یک ارتباط اختصاصی یکبهیک با سرورهای MCP برقرار میکند؛ مانند برنامهای هوش مصنوعی مثل Copilot Chat.
مفاهیم کلیدی برای درک بهتر:
- میزبان (هاست) MCP: برنامهای مبتنی بر LLM که میخواهد از طریق MCP به دادهها دسترسی پیدا کند. (مثلا VS Code، Copilot Chat)
- کلاینتهای MCP: ارتباط یکبهیک با سرورهای MCP را درون برنامه میزبان حفظ میکنند.
- سرورهای MCP: برنامههای سبکوزنی که قابلیتهای خاصی را از طریق MCP ارائه میدهند.
سرور MCP گیتهاب
💡 سرور MCP گیتهاب ابزارهای هوش مصنوعی را به پلتفرم گیتهاب متصل میکند، امکان درخواست دادههای بلادرنگ با زبان طبیعی را فراهم میکند و جریانهای کاری خودکار را با رابط استاندارد MCP فعال میسازد. |
سرور MCP گیتهاب ابزارهای هوش مصنوعی را مستقیما به پلتفرم گیتهاب متصل میکند. به جای استفاده از فراخوانیهای REST یا GraphQL API، کافی است کلاینت یا عامل سازگار با MCP خود را به سرور متصل کنید و دقیقا آنچه نیاز دارید را درخواست کنید.
برای مثال، میتوانید از آن بخواهید موارد زیر را در اختیار شما قرار دهد:
- فهرست تمام مسائل باز در یک مخزن
- نمایش درخواستهای کشش (Pull Requests) در انتظار بازبینی
- دریافت متادیتا درباره یک مخزن یا فایل
- ایجاد یا کامنتگذاری روی مسائل
نکته جذاب این است که حالا میتوانید با زبان طبیعی درخواستهای خود را مطرح کنید و این درخواستها بهصورت خودکار به فراخوانیهای API ساختاریافته و معنادار تبدیل میشوند. دیگر نیازی به ایجاد نقاط پایانی API سفارشی یا تجزیه توضیحات مارکداون (Markdown) نیست. با زبان طبیعی آنچه نیاز دارید را بخواهید تا دادههای Real-Time از گیتهاب دریافت کنید.
از آنجایی که سرور از MCP پشتیبانی میکند، میتواند با هر هاست سازگاری کار کند. Copilot Workspace، افزونههای VS Code، محصولات مبتنی بر LLM، رابطهای کاربری چت سفارشی و عاملهای خانگی همگی میتوانند با استفاده از رابط استاندارد یکسان، زمینه (Context) را درخواست کرده یا اقداماتی را اجرا کنند.
نحوه عملکرد
معماری MCP بهصورت مفهومی ساده اما قدرتمند است:
- سرور: سرور MCP گیتهاب یک سرویس مستقل است که به درخواستهای ساختاریافته MCP گوش میدهد.
- کلاینت: رابطی بین میزبان و سرور که میداند چگونه هدف کاربر را به درخواستهای معتبر MCP ترجمه کند.
- میزبان: رابط کاربری هوش مصنوعی (مانند دستیار IDE یا رابط کاربری چت) که مکالمه را نمایش میدهد و درخواستهای ساختاریافته را به لایههای پایینتر ارسال میکند.
وقتی کاربر سوالی میپرسد، میزبان سوال را به یک درخواست معنایی ترجمه میکند، کلاینت آن را بهعنوان یک درخواست MCP بستهبندی میکند و سرور دادههای واقعی را از گیتهاب دریافت کرده و بهصورت JSON ساختاریافته بازمیگرداند.
این ساختار یک جداسازی تمیز بین مدل زبانی، تجربه کاربری و دادهها یا ابزارهایی که میتواند به آنها دسترسی داشته باشد، ایجاد میکند. هر لایه مدولار، قابل آزمایش و قابل تعویض است.
نحوه شروع استفاده از سرور MCP از راه دور گیتهاب
خبر خوب اینکه میتوانید همین الان استفاده از سرور MCP گیتهاب را شروع کنید.
آنچه نیاز دارید:
- میزبان MCP: ویژوال استودیو کد یا هر برنامه LLM دیگری که از MCP پشتیبانی میکند.
- کلاینت MCP: عامل Copilot، رابط کاربری چت LLM یا کلاینت سفارشی که با MCP کار میکند.
- سرور MCP گیتهاب: موجود در مخزن رسمی سرور MCP گیتهاب.
نصب سرور MCP در VS Code
برای نصب سرور MCP گیتهاب در ویژوال استودیو کد، این مراحل را دنبال کنید:
۱. پیکربندی سرور را با کپی کردن این قطعه کد اضافه کنید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
{ “servers”: { “github”: { “type”: “http”, “url”: “https://api.githubcopilot.com/mcp/” } } } |
۲. ایجاد فایل پیکربندی:
- در ریشه پروژه خود، پوشهای به نام /vscode ایجاد کنید
- درون آن پوشه، فایلی به نام mcp.json بسازید
- کد بالا را در فایل جایگذاری کنید
۳. تکمیل راهاندازی:
- روی دکمه شروع که ظاهر میشود کلیک کنید
- جریان OAuth را وقتی درخواست شد، تکمیل کنید
حالا میتوانید از سرور MCP گیتهاب در ویژوال استودیو کد استفاده کنید.
موارد استفاده در دنیای واقعی
پذیرندگان اولیه از سرورهای MCP برای ساخت ابزارهای مفید استفاده کردهاند.
- اتوماسیون مارکداون:
تیمی از سرور MCP برای تبدیل دهها مسئله گیتهاب به فایلهای محتوای مارکداون برای یک میکروسایت جامعه استفاده کرد. این مسائل در جریان یک کمپین جمعآوری شده بودند. قبلا، تبدیل آنها به محتوای آماده برای سایت نیازمند قالببندی دستی و زمانبر بود. با MCP، تیم اسکریپتی ساخت که تمام مسائل برچسبدار را دریافت، متن را تمیز و قالببندی کرد و فایلها را بهصورت خودکار کامیت کرد. این کار فرآیند را به یک کار سریع و تکرارپذیر تبدیل کرد. - گزارشهای هفتگی تیمی:
تیم دیگری یک ربات سبک ساخت که مخازن خاص گیتهاب را اسکن کرده و گزارش هفتگی را تدوین میکند. این ربات درخواستهای کشش اخیر، مسائل و تغییرات ادغامشده را جمعآوری کرده و در قالب مارکداون خلاصه میکند. گزارش هر دوشنبه صبح به اسلک ارسال میشود و تیمهای توزیعشده را بدون نیاز به جلسه هماهنگ نگه میدارد. چون از MCP استفاده میکند، ربات به کوئریهای سختکدشده گیتهاب وابسته نیست؛ همان کد میتواند با هر سرور سازگار با MCP اجرا شود. - دستیارهای پروژه مکالمهای:
یک تیم متنباز کوچک رابطی مبتنی بر چت ساخت که مشارکتکنندگان میتوانستند سوالات زبان طبیعی مانند «کدام مسائل در انتظار بازبینی هستند؟» یا «در آخرین انتشار چه چیزی تغییر کرده؟» بپرسند. این عامل از MCP برای ترجمه این سوالات به کوئریهای ساختاریافته گیتهاب، دریافت دادههای بلادرنگ و ارائه خلاصههای مکالمهای استفاده میکند. - داشبوردهای شخصی LLM:
یک توسعهدهنده حساب گیتهاب خود را به یک عامل آگاه از MCP متصل کرد که روی یک داشبورد محلی اجرا میشود. این دستیار هر صبح اعلانهای پیشفعالی ارائه میدهد: پول ریکوئستهایی که نیاز به بازبینی دارند، مسائل قدیمی در مخازن تحت مالکیت و حتی پیشنویس یادداشتهای انتشار بر اساس تغییرات ادغامشده. این مانند یک Copilot شخصیسازیشده است که گیتهاب را برایشان نظارت میکند.
با ارائه زمینه واقعی و ساختاریافته به مدلهای هوش مصنوعی، سرورهای MCP ابزارهایی را امکانپذیر میکنند که هم هوشمندتر و هم امنتر هستند.
منبع: github.blog
دیدگاهتان را بنویسید