ارتقاء Amazon Q با پروتکل متن مدل (MCP)

ارتقاء رابط خط فرمان Amazon Q Developer با پروتکل متن مدل (MCP) برای درک متنی پیشرفته

چشم‌انداز توسعه نرم‌افزار به طور مداوم در حال تکامل است و توسعه‌دهندگان به دنبال ابزارهایی هستند که نه تنها گردش کار آن‌ها را ساده‌تر کنند، بلکه قابلیت‌های آن‌ها را نیز افزایش دهند. در این محیط پویا، Amazon Web Services (AWS) یک ارتقاء قابل توجه را به ابزار Amazon Q Developer خود معرفی کرده است: پشتیبانی از پروتکل متن مدل (MCP) در رابط خط فرمان (CLI). این یکپارچه‌سازی به توسعه‌دهندگان این امکان را می‌دهد تا منابع داده خارجی را به رابط خط فرمان Amazon Q Developer متصل کنند و پاسخ‌های آگاهانه‌تر و هوشمندتر را فعال سازند. با ادغام یکپارچه ابزارها و اعلان‌های MCP در رابط خط فرمان Q Developer، توسعه‌دهندگان به اکوسیستم گسترده‌ای از یکپارچه‌سازی‌های از پیش ساخته شده و سرورهای MCP که از stdio پشتیبانی می‌کنند، دسترسی پیدا می‌کنند. این زمینه غنی‌شده به Q Developer اجازه می‌دهد تا کد دقیق‌تری تولید کند، ساختارهای پیچیده داده را درک کند، تست‌های واحد مرتبط ایجاد کند، مستندات جامع پایگاه داده را تولید کند و پرس و جوهای دقیقی را اجرا کند، همه این‌ها بدون بار توسعه کد یکپارچه‌سازی سفارشی. با گسترش Q Developer با ابزارها و اعلان‌های MCP، توسعه‌دهندگان می‌توانند وظایف توسعه را تسریع بخشند و تجربه کلی توسعه‌دهنده را به طور قابل توجهی افزایش دهند. AWS متعهد به پشتیبانی از پروتکل‌های منبع باز برای عوامل، مانند پروتکل متن مدل (MCP) است که توسط Anthropic حمایت می‌شود. این تعهد در گسترش مداوم عملکرد در افزونه‌های IDE Amazon Q Developer منعکس شده است.

معرفی پروتکل متن مدل (MCP)

در قلمرو همیشه در حال تحول توسعه نرم‌افزار، ابزارها و فناوری‌هایی که گردش کار را ساده می‌کنند و قابلیت‌های جدیدی را باز می‌کنند، بسیار مورد توجه هستند. افزودن اخیر پشتیبانی از پروتکل متن مدل (MCP) در رابط خط فرمان (CLI) Amazon Q Developer یک توسعه است که نوید بسیار زیادی دارد. MCP یک پروتکل باز است که نحوه یکپارچه‌سازی یکپارچه برنامه‌ها با مدل‌های زبان بزرگ (LLM) را استاندارد می‌کند و یک چارچوب مشترک برای به اشتراک‌گذاری زمینه، دسترسی به منابع داده متنوع و فعال کردن عملکرد قدرتمند مبتنی بر هوش مصنوعی ارائه می‌دهد. MCP به عنوان پلی بین برنامه‌ها و LLMها عمل می‌کند و به آن‌ها اجازه می‌دهد تا به طور موثر ارتباط برقرار کرده و همکاری کنند. این امکان را به برنامه‌ها می‌دهد تا زمینه‌ای را که برای انجام وظایف به طور دقیق و کارآمد نیاز دارند، در اختیار LLMها قرار دهند و همچنین به LLMها اجازه می‌دهد تا به داده‌ها از منابع مختلف دسترسی داشته باشند و از آن‌ها استفاده کنند.

MCP بر قابلیت‌های موجود Q Developer، که از قبل توانایی استفاده از ابزارها را دارد، بنا شده است. پیش از این، Q Developer عملکردهایی مانند اجرای دستورات CLI و توصیف منابع AWS را ارائه می‌داد. با ادغام ابزارها و اعلان‌های MCP، رابط خط فرمان Q Developer این امکان را پیدا می‌کند که ابزارهای بیشتری را در خود جای دهد و قابلیت‌های خود را بیشتر گسترش دهد. به عنوان مثال، در حالی که Q Developer قبلاً می‌توانست منابع AWS را توصیف کند، توانایی توصیف طرحواره‌های پایگاه داده و قالب‌های پیام برای ساخت برنامه‌های جامع ضروری است. با پیکربندی MCP، توسعه‌دهندگان می‌توانند این زمینه اضافی را در اختیار Q Developer قرار دهند و به آن اجازه دهند تا وظایف را به طور موثرتری انجام دهد.

در بخش‌های زیر، نحوه پیکربندی یک سرور MCP برای ارائه طرحواره پایگاه داده برای یک سیستم مدیریت یادگیری (LMS) ساده را که در حال حاضر در حال توسعه است، بررسی خواهیم کرد. در حالی که Q Developer در نوشتن پرس و جوهای SQL برتری دارد، اما دانش ذاتی از طرحواره پایگاه داده ندارد. ساختار جدول و روابط در داخل خود پایگاه داده ذخیره می‌شوند و مستقیماً در کد منبع پروژه قابل دسترسی نیستند. برای رفع این محدودیت، ما از یک سرور MCP استفاده خواهیم کرد که قادر به پرس و جو از طرحواره پایگاه داده است. به طور خاص، ما از پیاده‌سازی مرجع رسمی PostgreSQL برای اتصال به یک نمونه Amazon Relational Database Service (RDS) استفاده خواهیم کرد.

چشم‌انداز قبل از پروتکل متن مدل

پیش از ظهور پشتیبانی از MCP، رابط خط فرمان Q Developer مجموعه محدودی از ابزارهای بومی را ارائه می‌داد، از جمله توانایی اجرای دستورات bash، تعامل با فایل‌ها و سیستم فایل و برقراری تماس با سرویس‌های AWS. با این حال، وقتی صحبت از پرس و جو از پایگاه‌های داده به میان می‌آمد، قابلیت‌های CLI محدود بود.

به عنوان مثال، قبل از پیکربندی سرور MCP، درخواستی از Q Developer مبنی بر ‘نوشتن یک پرس و جو که دانشجویان و تعداد اعتباری که هر دانشجو می‌گیرد را فهرست کند’ داده شد. در این سناریو، Q Developer فقط می‌توانست یک پرس و جو SQL عمومی ارائه دهد، زیرا دانش خاصی از طرحواره پایگاه داده برای LMS نداشت.

در حالی که این پرس و جو عمومی به عنوان یک نقطه شروع عمل می‌کند، واضح است که Q Developer با دسترسی به طرحواره پایگاه داده می‌تواند نتایج بسیار مناسب‌تر و دقیق‌تری ارائه دهد.

پیکربندی پروتکل متن مدل: یک راهنمای گام به گام

معرفی پشتیبانی از MCP در رابط خط فرمان Q Developer، پیکربندی سرورهای MCP را ساده می‌کند. سرورهای MCP در یک فایل به نام mcp.json پیکربندی می‌شوند. این فایل پیکربندی می‌تواند هم در دایرکتوری اصلی (به عنوان مثال، ~/.aws/amazonq/mcp.json) ذخیره شود و پیکربندی را برای همه پروژه‌ها روی دستگاه اعمال کند، یا در ریشه فضای کاری (به عنوان مثال، .amazonq/mcp.json)، که اعضای پروژه را قادر می‌سازد تا پیکربندی را به اشتراک بگذارند. در زیر یک مثال پیکربندی برای سرور MCP PostgreSQL آورده شده است: