MCP وواجهات البرمجة (API)mcp.remote-pro.ai

أداة request_proposal في خادم MCP

request_proposal تحوّل المحادثة إلى مسودة عرض لدى Remote Pro Ai وترسل للمستخدم رابط دخول لمراجعتها. هي الأداة الوحيدة في خادم MCP التي تنشئ شيئًا، لذا على المساعد عرض ملخص على المستخدم والحصول على تأكيده الصريح أولًا. لا يُحجز شيء ولا يُوقّع ولا يُدفع، ولا تُلزم الأسعار إلا بعد اعتماد بشري.

معاينة للمطورين حتى الإطلاق: خادم MCP وواجهة المنصة البرمجية لا يعملان بعد. تصف الأدوات ونقاط الاتصال والأمثلة في هذه الصفحات الواجهة التي نبنيها، ولا يعيد أي استدعاء اليوم نتيجة.

ما تفعله أداة request_proposal

Use it whenيقول المستخدم إنه يريد المتابعة، مثل: «أرسل لي عرضًا لهذا الفريق».
Never use itعلى سبيل التخمين، أو لحفظ نتائج بحث، أو دون أن يرى المستخدم الملخص.

مخطط المدخلات

الحقلالنوعإلزاميملاحظات
quote_idstringأحد الحقلين quote_id أو rolesمن estimate_squad_cost، وصالح 30 يومًا
rolesobject[]أحد الحقلين quote_id أو rolesبالبنية نفسها المستخدمة في estimate_squad_cost
contactobjectنعمname وwork_email وcompany وcountry
notesstringلاحتى 2,000 حرف: الأهداف والتقنيات والقيود
preferred_languageenumلاen أو ar
user_confirmationobjectنعمconfirmed: true، وsummary_shown: النص الذي وافق عليه المستخدم حرفيًا

مخطط المخرجات

  • proposal_id (مثل prop_K29XQ).
  • status: draft_pending_verification (دون مصادقة) أو draft_in_client_os (مع OAuth).
  • magic_link_sent_to: البريد مقنّعًا، مثل n***@company.com.
  • link_expires_in_hours: 24.
  • next_steps[]: مثل: افتح الرابط للتحقق من بريدك · راجع الفريق وأضف التفاصيل · يؤكد متخصص من Remote Pro Ai الأسعار قبل أي التزام.

مثال استدعاء واستجابة

Example (نثرًا)بعد تسعير الفريق، يعرض المساعد على المستخدم: سأنشئ مسودة عرض لمهندسَي سحابة بمستوى خبير ومهندس بمستوى قائد (العرض q_7HD29K)، وأرسل رابطًا إلى nadia@company.com. هل توافق؟ يرد المستخدم: نعم. يستدعي المساعد request_proposal بالمعرّف q_7HD29K، وبيانات التواصل، وملاحظات عن ترحيل إلى Kubernetes، وuser_confirmation بقيمة confirmed: true مع نص الملخص نفسه. تعيد الاستجابة proposal_id بقيمة prop_K29XQ، والحالة draft_pending_verification، والبريد المقنّع، ورابطًا ينتهي بعد 24 ساعة.

الطلب

tools/call
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "request_proposal",
    "arguments": {
      "quote_id": "q_7HD29K",
      "contact": {
        "name": "Nadia",
        "work_email": "nadia@company.com",
        "company": "Company",
        "country": "SA"
      },
      "notes": "Kubernetes migration",
      "preferred_language": "ar",
      "user_confirmation": {
        "confirmed": true,
        "summary_shown": "سأنشئ مسودة عرض لمهندسَي سحابة بمستوى خبير ومهندس بمستوى قائد (العرض q_7HD29K)، وأرسل رابطًا إلى nadia@company.com. هل توافق؟"
      }
    }
  }
}

الاستجابة

result
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "أُنشئت مسودة العرض، وأُرسل رابط إلى n***@company.com."
      }
    ],
    "structuredContent": {
      "proposal_id": "prop_K29XQ",
      "status": "draft_pending_verification",
      "magic_link_sent_to": "n***@company.com",
      "link_expires_in_hours": 24,
      "next_steps": [
        "افتح الرابط للتحقق من بريدك",
        "راجع الفريق وأضف التفاصيل",
        "يؤكد متخصص من Remote Pro Ai الأسعار قبل أي التزام"
      ]
    }
  }
}

الأخطاء

  • consent_required — اعرض على المستخدم ملخص ما سيُنشأ وإلى أين سيُرسل الرابط، ثم أعد الاستدعاء مع user_confirmation
  • invalid_argument — يجب أن يكون contact.work_email بريدًا صالحًا
  • quote_expired — انتهت صلاحية quote_id؛ أنشئ تقديرًا جديدًا قبل طلب العرض
  • rate_limited — بلغت حد العروض لهذا البريد؛ أعد المحاولة بعد retry_after دقيقة

الموافقة والاعتماد البشري والمصادقة

  • التلميحات: ليست للقراءة فقط، وليست متساوية الأثر عند التكرار؛ على المساعد سؤال المستخدم قبل تشغيلها.
  • الاستدعاء دون مصادقة يرسل رابط دخول بالبريد، ولا تظهر المسودة إلا بعد تحقق المستخدم من بريده.
  • مع OAuth (النطاق proposals:write) تُحفظ المسودة مباشرة في Client OS لمؤسسة المستخدم ليراجعها.
  • يراجع متخصص من Remote Pro Ai كل مسودة قبل إصدار أي عرض سعر. المساعد لا يحجز ولا يوقّع ولا يدفع أبدًا.
  • الحد: 5 عروض في الساعة لكل بريد إلكتروني.

الأسئلة الشائعة

لأنها الأداة الوحيدة التي تنشئ شيئًا وترسل بريدًا باسم المستخدم. على المساعد عرض ملخص للفريق والبريد الإلكتروني، والحصول على موافقة صريحة، وتمرير نص الملخص نفسه في user_confirmation. وأي استدعاء دونه يعيد الخطأ consent_required، فلا يُنشأ طلب باسم أحد دون علمه.

لا. تنشئ مسودة وترسل رابط دخول بالبريد. يراجع المستخدم المسودة في remote-pro.ai، ويؤكد متخصص من Remote Pro Ai الأسعار، وبعدها فقط يصدر عرض السعر. أما الحجز والتوقيع والدفع فتتم دائمًا في جلسة المستخدم نفسه.

الاستدعاء دون مصادقة يرسل رابط دخول صالحًا 24 ساعة، ويتحقق المستخدم من بريده ليرى المسودة. ومع رمز OAuth يحمل النطاق proposals:write، تذهب المسودة مباشرة إلى Client OS لدى المؤسسة، مرتبطة بالحساب والمعتمِد الصحيحين، دون رابط بريد.

نعم، وهو المسار الموصى به. ينقل quote_id الفريق والمستويات والأسعار التقديرية نفسها إلى المسودة. ويجب ألا يتجاوز عمره 30 يومًا؛ وإلا تعيد الأداة quote_expired، فتنشئ تقديرًا جديدًا أولًا ثم تعيد الطلب.

الأدوار والمستويات، وquote_id إن وُجد، والبريد الذي سيُرسل إليه الرابط، في جملة أو جملتين واضحتين. مثال: سأنشئ مسودة عرض لـ 3 مهندسي سحابة وأرسل رابطًا إلى بريدك name@company.com. هل توافق؟