تشغيل خادم solvethree MCP في Docker
ابنِ صورة محلية من تنزيل SDK الرسمي ذي الإصدار المحدد، ثم اجعل مضيف MCP يشغّلها باستخدام Docker. أبقِ stdin مفتوحًا باستخدام -i واحذف -t: يتواصل الخادم ببروتوكول JSON-RPC عبر stdio، وليس ببروتوكول طرفية.
في هذه الصفحة
ابنِ الصورة المحلية
احفظ هذا باسم Dockerfile. يثبّت الحزمة الرسمية على Node 22، وينتقل إلى المستخدم node الذي لا يملك صلاحيات الجذر، ويشغّل solvethree-mcp كنقطة دخول للحاوية. أوامر البناء والتشغيل مُدرجة أدناه.
FROM node:22.23.4-alpine
RUN npm install --global https://solvethree.com/downloads/solvethree-sdk-0.1.0.tgz
USER node
ENTRYPOINT ["solvethree-mcp"]
# Build: docker build -t solvethree-mcp-local .
# Forward variables already set in the host; do not add their values to this file.
# Run: docker run --rm -i -e SOLVETHREE_API_KEY -e SOLVETHREE_PROXY solvethree-mcp-localقبل تشغيلها، اضبط SOLVETHREE_API_KEY على مفتاح API لمساحة عملك وSOLVETHREE_PROXY على وكيلك، في البيئة التي تشغّل Docker. يمرّر كل -e NAME متغيرًا موجودًا؛ ولا يوفّر قيمة له. أبقِ بيانات الاعتماد خارج Dockerfile والصورة.
تُبنى الصورة محليًا باسم solvethree-mcp-local؛ ولا تحتاج إلى حساب Docker Hub. لا يؤدي تشغيلها إلى إنشاء نقطة نهاية MCP مستضافة أو إضافة أتمتة للمتصفح.
اجعل مضيف MCP يشغّل Docker
هيّئ خادم stdio في مضيف MCP. استخدم Docker بوصفه الأمر، وليس solvethree-mcp: فنقطة دخول الصورة تشغّل الملف التنفيذي داخل الحاوية.
| الإعداد | القيمة |
|---|---|
| الأمر | docker |
| الوسائط بالترتيب | run, --rm, -i, -e, SOLVETHREE_API_KEY, -e, SOLVETHREE_PROXY, solvethree-mcp-local |
لا تضف -t. يحتاج المضيف إلى stdin وstdout للحاوية من أجل JSON-RPC. يزيل --rm الحاوية عند انتهائها.
يجب أن يكون كلا متغيرَي البيئة متاحًا لعملية مضيف MCP. لن يفيد ضبطهما في طرفية مضيفًا شُغّل من مكان آخر، ما لم يرثهما ذلك المضيف. إذا كان المضيف يقيّد تمرير متغيرات البيئة، فاسمح بكلا الاسمَين.
لتهيئة TOML بنمط Codex، استخدم جدول mcp_servers.solvethree مع الأمر والوسائط أعلاه. أدرج اسمَي المتغيرَين في env_vars، واضبط startup_timeout_sec على 60 وtool_timeout_sec على 100. راجع وثائق تكامل MCP للاطّلاع على العقد الأساسي للخادم.
اطلب مهمة ومرّر النتيجة
- 1.
تحقّق من الأدوات المتاحة
استدعِ
solvethree_capabilitiesبعد الاتصال. يوفّر الخادم أدوات الحل واسترجاع المهام؛ ولا يتحكّم في متصفح أو يملأ النماذج. - 2.
جهّز ملف تعريف reCAPTCHA
بالنسبة إلى reCAPTCHA، أعدّ ملف تعريف نشطًا في ملفات تعريف المواقع قبل طلب الحل. طابق اسم المضيف وإجراء الالتقاط ونوع reCAPTCHA؛ ولا تفترض أن ملف تعريف واحدًا للنطاق يغطي كل الإجراءات. لا يؤدي إرسال مهمة إلى إنشاء ملف تعريف. يشرح دليل إعداد ملف التعريف هذا المتطلب المسبق.
- 3.
أنشئ مهمة منطقية واحدة
استدعِ
solvethree_create_recaptchaباستخدامsiteوactionوrequestId؛ أماrecaptchaTypeوwaitMsفاختياريان. تقرأ هذه الأداة إعداد الوكيل الوحيد منSOLVETHREE_PROXY. ينشئ كل استدعاء إنشاء مهمة واحدة على الأكثر. إذا انتهت مهلة الإنشاء، فأعِد استخدام معرّف الطلب نفسه مع المدخلات نفسها لاستعادة المهمة الموجودة بدلًا من إنشاء مهمة أخرى. - 4.
انتظر نتيجة قابلة للاستخدام
إذا كانت حالة المهمة
pendingأوsolving، فاسترجعها باستخدامsolvethree_get_task. وحدها الحالةreadyتحتوي على حل قابل للاستخدام. عند الحالةfailed، توقّف عن الاستقصاء وافحصerrorCodeوerrorقبل تحديد ما يجب تغييره. - 5.
أرسل من تطبيقك
بالنسبة إلى reCAPTCHA، أرسل
solution.token، وليس معرّف المهمة. استخدم الهوية المُعادة فيuserAgentوsecChUaمع الوكيل الذي نجح الحل عبره. تعني المهمة الجاهزة أنه تم توليد حل، وليس أن الهدف قبل طلب تطبيقك.
يتلقى مضيف MCP بيانات الحل الخاصة. أبقِ تلك النتائج خارج السجلات المشتركة؛ ويظل تطبيقك مسؤولًا عن إرسالها إلى الهدف المقصود.
المصادر ومرجع API
شغّل مهمتك الأولى.
ابدأ برصيد قدره $5 في مساحة العمل.