إعداد MCP في Windsurf: السوق والخوادم في Devin Desktop
تحوّل Windsurf إلى Devin Desktop في يونيو 2026، وانقسم إعداد MCP فيه إلى قسمين. يوضّح هذا المقال مكان كل ملف إعداد، والوكيل الذي يضم السوق، وطريقة إضافة خوادم stdio والخوادم البعيدة يدويًا، وكيفية إصلاح خادم لا يظهر أبدًا، مع PicassoIA كمثال تطبيقي.
تبحث عن دليل إعداد MCP في Windsurf، وتتبعه سطرًا سطرًا، فإذا بأيقونة السوق التي يصفها غير موجودة على شاشتك. هذا ليس خطأ منك. أُعيدت تسمية Windsurf إلى Devin Desktop في يونيو 2026، وصفحات الوثائق القديمة تُحوّل الآن إلى docs.devin.ai، وتغيّر الوكيل الافتراضي للتبويبات الجديدة من Cascade إلى Devin Local. يُهيّئ الوكيلان خوادم MCP بطريقتين مختلفتين، ولا يملك سوى أحدهما سوقًا.
يوضّح هذا المقال الإعداد الذي تستخدمه، ومكان كل ملف إعداد، وكيفية إضافة الخوادم عبر السوق أو يدويًا، وما الذي يجب فحصه عندما يبقى خادم صامتًا. كما يشرح كيفية ربط نماذج الصور والفيديو الخاصة بمنصة PicassoIA عبر MCP، حتى يتمكن محررك من إنتاج الأصول بينما تكتب الشيفرة. كل إعداد وارد أدناه مأخوذ من وثائق Devin الرسمية ما لم أذكر خلاف ذلك، وحيثما تختلف تلك الصفحات مع بعضها، أشير إلى ذلك.
ما الذي تغيّر في Windsurf
Windsurf أصبحت الآن Devin Desktop
أعادت Cognition تسمية المحرر في يونيو 2026. لا تزال نتائج البحث والدروس القديمة تقول Windsurf، لكن سجل التغييرات وصفحات المنتج والوثائق صارت الآن تحت اسم Devin. يبقى اسم Cascade اسمًا للـوكيل القديم، بينما Devin Local هو الوكيل الافتراضي.
هذا الانقسام هو سبب شعور كثير من الدروس بأنها خاطئة. تبدأ صفحة Cascade الرسمية الخاصة بميزة MCP بتحذير: تنطبق تعليماتها على وكيل Cascade القديم فقط، أما Devin Local فيُعدّ خوادم MCP عبر ملفات إعداد Devin CLI.
وكيلان، وطريقتا إعداد
الميزة
Cascade القديم
Devin Local
سوق MCP
لا يوجد
نعم، مع تثبيت بنقرة واحدة
إضافة خادم
تعديل mcp_config.json من قائمة الإجراءات
السوق، أو devin mcp add، أو ملفات الإعداد
الموافقة قبل استدعاء الأدوات
ليس افتراضيًا
يطلب الموافقة افتراضيًا
سقف الأدوات
100 أداة في المجموع
غير مذكور في الصفحات التي راجعتها
حقول الخادم البعيد
serverUrl أو url، إضافةً إلى headers
url، إضافةً إلى transport وheaders
💡 فحص سريع: تُفتح التبويبات الجديدة مع Devin Local افتراضيًا. ما لم تكن قد بدّلت الوكيل عن قصد، فافترض أن عمود Devin Local يصف محررك.
أين يقع ملف الإعداد
قبل أن تعدّل أي شيء، اعرف الملف الذي يقرأه وكيلك. التعديل الصحيح في الملف الخطأ يُنتج أكثر أنواع الفشل إرباكًا: لا يحدث شيء، ولا يظهر أي تحذير.
مسارات Cascade القديم
تذكر صفحة Cascade الحالية أن الملف يقع في ~/.config/devin/mcp_config.json على macOS وLinux (أو في الملف نفسه تحت $XDG_CONFIG_HOME/devin/ عندما يكون ذلك المتغير مضبوطًا)، وفي %APPDATA%\devin\mcp_config.json على Windows. لفتحه من المحرر، انقر على قائمة ... (الإجراءات) في أعلى يمين لوحة Cascade، ثم اختر Open MCP config file في قسم MCPs.
الدروس المكتوبة قبل إعادة التسمية تشير إلى مكان آخر: ~/.codeium/windsurf/mcp_config.json، أو %USERPROFILE%\.codeium\windsurf\mcp_config.json على Windows. تفيد مقالات طرف ثالث بأن مدخلًا في الملف القديم ما زال يُحمَّل، لكن الصفحات الرسمية لا تؤكد ذلك. اعتبر المسار القديم احتياطيًا لا خطة أساسية.
طبقات إعداد Devin Local
يقرأ Devin Local ملفات إعداد Devin CLI، وهي موزعة على ثلاث طبقات:
النطاق
الملف
ملاحظات
المستخدم
~/.config/devin/mcp_config.json أو %APPDATA%\devin\mcp_config.json
ينطبق على كل المشاريع
المشروع
.devin/mcp_config.json
يوجد داخل المستودع، لذلك يمكن مشاركته
التجاوز المحلي
.devin/mcp_config.local.json
مستثنى من git، وخاص بك
وهناك تفصيل مربك: تعرض صفحة Devin Local ملفات config.json بالنطاقات الثلاثة نفسها، بينما تذكر صفحة CLI أن الإصدارات الأقدم (قبل v3000.3) كانت تضع mcpServers داخل ملفات الإعداد الرئيسية، وأن الإصدارات الأحدث تستخدم الملف المنفصل mcp_config.json. تختلف الوثائق حول أيهما الحالي. شغّل devin mcp list لترى ما حمّله التثبيت لديك فعلًا قبل أن تعدّل أي ملف.
استخدام سوق MCP
تقول صفحة Cascade الرسمية بوضوح: لا يملك Cascade سوق MCP ولا تثبيتًا بنقرة واحدة، فهاتان الميزتان موجودتان فقط لوكيل Devin Local. إذا طلب منك درس أن تنقر على أيقونة MCPs في لوحة Cascade وتضغط Install، فهو يصف المحرر القديم.
أين تجده
في Devin Local، تشير ملاحظات الإصدار إلى صفحة Customize في الشريط الجانبي، حيث يقع Browse marketplace في تبويب Plugins. تتغير تسميات القوائم بين الإصدارات، لذا إن لم تجدها، ابدأ من Customize وابحث من هناك.
كثير من الإدراجات تكاملات OAuth بنقرة واحدة. تذكر ملاحظات الإصدار خدمات مثل Dropbox وClickHouse Cloud وTypeform وCoda وGitBook وRailway وRetool وSmartsheet وMake. عند تثبيت أحدها يُعاد رابط تفويض، توافق عليه في المتصفح، ويتصل الخادم دون لصق أي رمز في ملف. وإذا انتهت صلاحية بيانات الاعتماد المخزّنة لاحقًا، يظهر الخادم بحالة Needs auth مع زر Authenticate.
متى تتجاوزه
السوق هو الطريق الأسرع، لكنه ليس الصحيح دائمًا. عدّل الإعداد يدويًا عندما:
تحتاج إلى تثبيت إصدار حزمة في args بدلًا من أخذ الأحدث.
يكون الخادم داخليًا ولن يظهر أبدًا في قائمة عامة.
تريد أن يكون الإعداد مُودعًا في المستودع ليحصل عليه زملاؤك عند السحب.
تحتاج إلى تحكم دقيق في متغيرات البيئة ووسائط التشغيل.
تُضحّي تثبيتات OAuth بجانب من التحكم مقابل الراحة: لا يوجد سر مخزّن على قرصك، لكنك لا تملك القرار في وسائط التشغيل. المدخل المعدّل يدويًا يمنحك الأمرين، مقابل أن تدوّر الرموز بنفسك.
أضف خادمًا يدويًا
مثال خادم stdio
خادم stdio عملية محلية يشغّلها المحرر ويتواصل معها عبر الإدخال والإخراج القياسيين. هذا مثال GitHub الرسمي، مع نقل الرمز إلى متغير بيئة:
command وargs هما ما قد تكتبه في الطرفية. تتيح العلامة -y لـnpx تثبيت الحزمة دون أن يتوقف ليسأل. تُمرَّر كتلة env إلى العملية، ولا يُضمن وصول أي شيء آخر من الصدفة إليها.
مثال خادم بعيد
تحتاج الخوادم البعيدة إلى عنوان URL بدلًا من أمر. يقبل Cascade القديم serverUrl أو url:
عندما تكون transport هي "http" أو غير مكتوبة، تجرب CLI بروتوكول Streamable HTTP أولًا، وتتراجع إلى SSE إذا ردّ الخادم برمز 404. يوثّق Cascade ثلاث وسائل نقل في المجموع: stdio وStreamable HTTP وSSE، ولكل منها دعم OAuth.
إليك مرجعًا سريعًا للحقول في التنسيقين:
الحقل
يستخدمه
الغرض
command، args
stdio
البرنامج الذي يُشغَّل ووسائطه
env
stdio
المتغيرات التي تُمرَّر إلى العملية
serverUrl أو url
بعيد
العنوان الذي يستمع إليه الخادم
transport
بعيد، تنسيق CLI
اتركه كـ"http" لتجربة Streamable HTTP أولًا
headers
بعيد
ترويسات طلب إضافية، مثل رمز Bearer
oauthClientId، oauthClientSecret، oauthResource
بعيد، تنسيق CLI
إعدادات للخوادم التي تحتاج إلى OAuth
disabled
stdio والبعيد، تنسيق CLI
يطفئ المدخل دون حذفه
disabledTools
Cascade
يخفي أدوات بعينها عن الوكيل
أوامر CLI والأسرار
يمكنك الاستغناء عن JSON تمامًا. تدير Devin CLI الخوادم بهذه الأوامر:
💡 نصيحة: ضع الرموز الشخصية في .devin/mcp_config.local.json، وهو مستثنى من git، وأبقِ .devin/mcp_config.json المشترك خاليًا من الأسرار. الرمز الذي يُودَع مرة واحدة يبقى في سجل git.
الحدود والموافقات وقوائم السماح
سقف 100 أداة
يمكن أن يحمل Cascade 100 أداة في المجموع عبر كل الخوادم المتصلة. الخوادم الكبيرة تستهلك هذه الميزانية بسرعة، وبعد تجاوزها لن تتاح بعض الأدوات ببساطة. قلّص ما لا تحتاج إليه بمصفوفة disabledTools:
تساعد مجموعة أدوات أصغر الوكيلَ أيضًا على اختيار الأداة الصحيحة، لذا يستحق تعطيل الأدوات التي لا تستدعيها أبدًا العناء حتى ضمن الحد المسموح.
طلبات الموافقة في Devin Local
يتصرف Devin Local هنا بشكل مختلف عن Cascade. يطلب إعداده الافتراضي الموافقة قبل استدعاء أي أداة MCP. يمكنك منح الإذن لأداة واحدة أو لخادم كامل، إما للجلسة الحالية أو بشكل دائم. ويمكن لمسؤولي المؤسسات السماح تلقائيًا بخوادم أو أدوات بعينها، حتى لا تقاطع التكاملات الموثوقة الناس باستمرار.
قوائم السماح للفرق
يمكن للمسؤولين في خطط Teams وEnterprise ضبط سجل MCP مخصص وقائمة سماح. قاعدتان مهمتان. بمجرد إضافة أي خادم إلى قائمة السماح، يُحظر كل خادم غير مدرج فيها على مستوى الفريق بأكمله. والأنماط تعابير نمطية تُطابَق مع السلسلة كاملة، لذلك لن يطابق النمط الفضفاض ما تتوقعه. كما يجب على مستخدمي Enterprise تفعيل MCP يدويًا في الإعدادات.
يبدو الإطلاق الآمن كالتالي: اسرد الخوادم التي يستخدمها فريقك فعلًا، واكتب نمطًا مثبّتًا واحدًا لكل خادم، ثم فعّل قائمة السماح لمجموعة اختبار صغيرة، واطلب من أحد أفرادها إضافة خادم لم تدرجه أنت والتأكد من حظره. عندها فقط وسّع النطاق ليشمل الجميع.
إصلاح خادم صامت
تحقق من الأساسيات
نفّذ هذه القائمة بالترتيب:
تحقق من صحة JSON. فاصلة زائدة في النهاية أو علامة اقتباس مفقودة تجعل الملف كله غير قابل للقراءة.
شغّل الأمر في الطرفية. إذا فشل npx -y @modelcontextprotocol/server-github هناك، فسيفشل في المحرر أيضًا.
تحقق من Node.js. تذكر مقالات الإعداد من طرف ثالث أن الخوادم التي تعمل بـnpx تحتاج إلى Node.js 18 أو أحدث.
شغّل devin mcp list. يعرض ما تم تحميله فعلًا، وهذا أفضل من التخمين.
أعد تشغيل المحرر. لا تذكر الصفحة الرسمية ما إذا كانت إعادة التشغيل ضرورية، بينما توصي مقالات الطرف الثالث بها، لذا فإعادة التشغيل تكلفة زهيدة تحمي من المشكلة.
افحص البيئة. قد يعتمد خادم يعمل بشكل سليم في طرفيتك على متغير لم يره المحرر أبدًا. اضبطه في env، أو استخدم ${env:VAR} وشغّل المحرر من صدفة تحتويه.
استبعد الملف الخطأ
إذا لم يظهر الخادم أبدًا، فتحقق مما إذا كنت قد عدّلت الملف الذي يقرؤه وكيلك. يرسلك درس يسبق إعادة التسمية إلى ~/.codeium/windsurf/mcp_config.json، بينما يقرأ Devin Local طبقات CLI بدلًا منه. أضف مدخلًا تجريبيًا، ثم تأكد من ظهوره في devin mcp list قبل أن تبني الإعداد الحقيقي.
إذا كنت تنقل إعداد Windsurf قديمًا، فانسخ كتلة mcpServers الخاصة به إلى mcp_config.json على مستوى المستخدم، ثم شغّل devin mcp list، واحذف الملف القديم بعد ذلك فقط. بهذا الترتيب لن تفقد خادمًا يعمل أثناء الاختبار.
عندما تكون قائمة السماح للفريق مفعّلة، تقدّم الوثائق أربعة فحوص: تأكد من أن النمط يطابق إعداد المستخدم تطابقًا تامًا، وتحقق من تهريب التعابير النمطية، وراجع السجلات (تُسجَّل الأنماط غير الصالحة بتحذيرات)، واختبر الأنماط في أداة اختبار للتعابير النمطية.
كيف تستخدم PicassoIA عبر MCP
بعد ضبط الإعدادات، يصبح خادم MCP مفيدًا فقط إذا أضاف شيئًا إلى مشروعك. ومن أفضل الخيارات الأولى توليد الصور، لأن الصور الرئيسية للمدونة ولقطات الشاشة للتطبيقات وصور README تظهر غالبًا أثناء البناء. تعرض PicassoIA أربعة نماذج عبر موصل MCP الخاص بها وعبر واجهة API للمطورين:
افتح صفحة اتصالات MCP. تقع في picassoia.com/en/mcp/accounts وتتطلب تسجيل الدخول. أنشئ اتصالًا وانسخ عنوان URL للخادم المعروض هناك. هذا العنوان غير منشور على الموقع العام، فلا تخمّنه.
أضفه من CLI. شغّل devin mcp add picassoia <URL from step 1>. هذه صيغة الأمر الموثّقة لخادم HTTP.
سجّل الدخول عند الطلب. إذا كان الخادم يستخدم OAuth، فشغّل devin mcp login picassoia.
تأكد من أنه تحمّل. يجب أن يعرض devin mcp list الأداة picassoia.
اطلب أصلًا. أخبر الوكيل بما تحتاجه، مثل صورة بطل بنسبة 16:9 لمنشور ما. سيبدأ المهمة باستخدام PicassoIA Image، ثم يستطلع الحالة حتى تصبح succeeded ويعطيك عنوان URL.
أدوات الموصّل وحدوده
يعرض موصّل PicassoIA تسع أدوات: generate_image، edit_image، generate_video_picassoia، generate_video_seedance، get_generation، list_generations، cancel_generation، list_models وget_account. وهذا جزء صغير من ميزانية تبلغ 100 أداة.
المهام غير متزامنة. يُعيد استدعاء التوليد معرّف تنبؤ، ويستطلع الوكيل get_generation حتى تنجح المهمة أو تفشل. الفشل نهائي، لذا أعد المحاولة بتوليد جديد. تسمح المنصة بعدد 5 تنبؤات متزامنة لكل حساب، مشتركة بين رموز API واتصالات MCP، ويُحدّ طول الأوامر النصية بـ4,000 حرف.
هل تفضّل السكربتات على المحرر؟ تعيش واجهة API للمطورين على https://api.picassoia.com/v1، وتقبل رمز Bearer يبدأ بالتسلسل pia_sk_، ويُنشأ هذا الرمز من قسم API في حسابك. تُنشأ التنبؤات باستخدام POST /v1/models/{owner}/{name}/predictions ويُقرأ الناتج عبر GET /v1/predictions/{id}. تعرض صفحة الأسعار ووثائق API صلاحية الخطط بطريقتين مختلفتين، لذا تحقّق من الخطة التي يحتاجها حسابك قبل طرح الأداة على الفريق.
💡 نصيحة: هل تحتاج إلى مساعدة في صياغة أمر نصي قبل أن ينفذه الوكيل؟ تضم مجموعة النماذج اللغوية على PicassoIA كلًا من Claude Sonnet 5 وGPT 5.6 Sol.
جرّبه بصورك الخاصة
لا قيمة لإعدادك إلا بقدر أول ما ينتجه، لذا أنتج شيئًا. صِل الخادم، واطلب صورة بطل واحدة للمشروع الذي تعمل عليه اليوم، وانظر كيف تبدو. غيّر الإضاءة والعدسة والتأطير في أمرك النصي، ثم شغّله من جديد وقارن. بضع جولات تكفي لإيجاد أسلوب يناسب مدونتك أو تطبيقك.
ثلاثة أوامر أولى تصلح اختبارات جيدة للاتصال:
صورة بطل. اطلب من PicassoIA Image صورة فوتوغرافية بنسبة 16:9 لمكتب عند الساعة الذهبية، مع تحديد عدسة وإضاءة معينتين في الأمر النصي.
مقطع قصير. حوّل صورة البطل إلى حركة باستخدام PicassoIA Video، ثم تحقق من النتيجة قبل أن تلتزم بتصيير أطول.
افتح Picasso IA، واختر نموذجًا من القائمة، وولّد أول صورة لك. كل نموذج، من تحويل النص إلى صورة وفيديو، وصولًا إلى النماذج اللغوية، مدرج في picassoia.com/en/all-models.