Sendveo لوكلاء الذكاء الاصطناعي
تتحدّث Sendveo بروتوكول Model Context Protocol (MCP). أضفها إلى Claude أو Cursor أو ChatGPT أو أي وكيل يدعم MCP، ثم اطلب بلغة طبيعية: اعرض أرقامي، اربط هذا الرقم، رُدّ على تلك المحادثة. والوكيل ينادي Sendveo نيابة عنك.
ما هو
خادم MCP الخاص بـ Sendveo جسر صغير بين مساعدك الذكي وحسابك في Sendveo. يعرض الإجراءات نفسها الموجودة في الـ API ولوحة التحكم، على هيئة أدوات يستطيع المساعد استدعاءها. وكل شيء يجري ضمن حسابك أنت: تسجّل الدخول ببريدك وكلمة مرورك في Sendveo، أو تستخدم مفتاح API من لوحة التحكم إن كان الأمر يتعلّق بسكربت أو أداة سطر أوامر.
هناك طريقتان للربط، وكلتاهما تتيحان الأدوات نفسها. مستضافة: تلصق رابطًا واحدًا في المساعد وتسجّل الدخول، دون تثبيت أي شيء ودون نسخ أي مفتاح. ومحلية: يشغّل المساعد أمر Sendveo صغيرًا على جهازك بمفتاح API لا يغادره أبدًا.
ما يمكنك فعله
أداة واحدة لكل إجراء، مجمّعة كما يجمّعها الدليل: الأرقام، الرسائل، المحادثات، جهات الاتصال، المجموعات، السلامة والملف الشخصي، التسميات، webhook، الفوترة. وميزات المشغّل غير معروضة: الخادم محصور في الحساب الذي يخصّه الاتصال.
| الأداة | ما تفعله |
|---|---|
| الأرقام | |
| list_numbers | يعرض أرقام واتساب الخاصة بك وحالتها وسلامتها. |
| get_number | يستعرض رقمًا واحدًا عبر معرّفه، مع حالة سلامته. |
| connect_number | يربط رقمًا جديدًا. يعيد صورة QR للمسح، أو رمزًا من 8 أحرف تكتبه في واتساب. |
| refresh_qr | يجلب رمز QR أو رمزًا جديدًا ما دام الرقم في مرحلة الاقتران (فهي تتغيّر باستمرار). |
| reconnect_number | يعيد ربط رقم انقطعت جلسته. |
| disconnect_number | يوقف رقمًا عن العمل. يحرّر مقعده ويحتفظ بالرقم. |
| remove_number | يحذف رقمًا نهائيًا. |
| الرسائل | |
| send_message | يرسل رسالة واتساب (نص، ملفات، رسالة صوتية، موقع، بطاقات جهات اتصال، رد مقتبس) إلى رقم هاتف أو داخل محادثة قائمة. |
| get_messages | يقرأ الرسائل الواردة والصادرة المحفوظة: النص والنوع وحالة التسليم والملفات والتفاعلات. |
| get_message | يقرأ رسالة واحدة عبر معرّفها، بحالتها الراهنة. |
| get_attachment | يجلب ملفًا من رسالة. الصورة تعود صورةً يمكنك رؤيتها؛ وما عداها يعود على شكل تفاصيل مع رابط Sendveo. |
| react_to_message | يتفاعل مع رسالة برمز تعبيري واحد. |
| remove_reaction | يسحب تفاعلك. |
| forward_message | يعيد توجيه رسالة إلى محادثة أخرى لديك. |
| delete_message | يحذف رسالة لدى الجميع. لا يمكن التراجع عن ذلك. |
| mark_chat_read | يضع علامة مقروءة، أو غير مقروءة، على محادثة. |
| send_typing | يُظهر مؤشر الكتابة للحظة قبل إرسال رسالة. |
| المحادثات | |
| list_chats | يعرض محادثاتك: الاسم وعدد غير المقروء والأرشفة والكتم وآخر رسالة والتسميات. |
| get_chat | يقرأ محادثة واحدة كاملة، بمن فيها من أعضاء وبتسمياتها. |
| archive_chat | يؤرشف محادثة. |
| unarchive_chat | يخرج محادثة من الأرشيف. |
| mute_chat | يكتم إشعارات محادثة. |
| unmute_chat | يعيد تفعيل إشعارات محادثة. |
| sync_chat_history | يجلب الرسائل الأقدم إلى ما يعيده get_messages. |
| جهات الاتصال | |
| get_contact | ما يكشفه واتساب عن رقم واحد: موجود على واتساب أم لا، والاسم، والنشاط التجاري، وسطر الحالة. |
| get_contact_picture | صورة الملف الشخصي لجهة اتصال، صورةً يمكنك رؤيتها أو رابط Sendveo. |
| lookup_numbers | أي الأرقام، من بين 50 رقمًا كحد أقصى، موجودة على واتساب (نعم أو لا، ولا شيء غير ذلك). |
| المجموعات | |
| list_groups | يعرض المجموعات التي تنتمي إليها أرقامك. |
| get_group | يقرأ مجموعة واحدة: الموضوع والصورة والأعضاء. |
| get_group_picture | صورة مجموعة، صورةً أو رابط Sendveo. |
| create_group | ينشئ مجموعة بموضوع وأعضاء ورسالة أولى اختيارية. |
| add_group_members | يضيف أشخاصًا إلى مجموعة، القائمة كلها في نداء واحد، وتُفحص قبل انضمام أي أحد. والرفض في منتصف الطريق يُبقي الأرقام الأولى في المجموعة، ويذكرها الخطأ بالاسم. |
| remove_group_member | يزيل شخصًا من مجموعة (لا نفسك أبدًا: استخدم leave_group). |
| leave_group | يخرج رقمك أنت من مجموعة. |
| السلامة والملف الشخصي | |
| get_number_health | هل يعمل هذا الرقم؟ حالته وسلامته وما جرى له. |
| list_number_events | سجل السلامة وحده. تصفّحه صفحةً صفحة بمؤشر. |
| get_number_profile | ما ينشره خطك أنت عن نفسه: الاسم، والنبذة، والنشاط التجاري، والصورة. للقراءة فقط. |
| get_number_picture | صورة خطك أنت، صورةً يمكنك رؤيتها أو رابط Sendveo. |
| التسميات | |
| list_labels | تسمياتك، مع عدد المحادثات التي تحمل كلًا منها. |
| create_label | ينشئ تسمية: اسم ولون اختياري من لوحة ألوان ثابتة. |
| update_label | يعيد تسمية تسمية أو يغيّر لونها. |
| delete_label | يحذف تسمية. وتُنزع من كل محادثة كانت تحملها. |
| add_chat_label | يضع تسمية على محادثة، بالمعرّف أو بالاسم (الاسم الجديد ينشئها). |
| remove_chat_label | ينزع تسمية واحدة من محادثة واحدة. |
| Webhook | |
| get_webhook | يعرض الرابط الذي ترسل إليه Sendveo الرسائل الواردة. |
| set_webhook | يضبط هذا الرابط أو يستبدله. |
| الفوترة | |
| get_billing | يعرض رصيدك ومقاعدك: الرصيد المتاح في حسابك، والمقاعد بالبطاقة وبالرصيد، وأي تجديد شهري غير مدفوع، وما إذا كان يمكنك الشراء بالبطاقة أو تفعيل أرقام برصيدك. |
تقبل connect_number وrefresh_qr وreconnect_number معاملًا اختياريًا method. يعيد qr (الافتراضي) رمز QR تمسحه من واتساب في الأجهزة المرتبطة، ربط جهاز. ويعيد code رمزًا من 8 أحرف تكتبه في الربط برقم الهاتف: استخدمه حين تكون على الهاتف نفسه الذي يحمل الرقم ولا تستطيع مسح الشاشة. كلاهما ينتهي ويتغيّر، فاطلب رمزًا جديدًا إن توقّف عن العمل.
الخيار أ: الصق الرابط وسجّل الدخول (موصى به)
أضف Sendveo إلى مساعدك كخادم MCP بعيد. تحتاج إلى قيمة واحدة فقط: رابط MCP الخاص بـ Sendveo. لا شيء لتثبّته ولا مفتاح لتلصقه: يفتح مساعدك صفحة Sendveo تسجّل فيها الدخول وتوافق على الاتصال.
https://mcp.sendveo.com/mcpفي Claude
- افتح الإعدادات، ثم الموصلات، واختر إضافة موصل مخصّص.
- الصق رابط MCP الخاص بـ Sendveo الظاهر أعلاه واحفظ. ويتكفّل مساعدك بالباقي وحده.
- تُفتح صفحة Sendveo في متصفّحك. سجّل الدخول بالبريد وكلمة المرور اللذين تستخدمهما للوحة التحكم.
- اقرأ ما يطلبه المساعد والعنوان الذي سيعيدك إليه، ثم اضغط السماح. وإن ضغطت رفض فلن يُمنح شيء.
يحصل المساعد على اتصال مرتبط بحسابك، يحمل الصلاحيات المعروضة في شاشة الموافقة تلك. ينتهي بعد ساعة ويتجدّد تلقائيًا ما دام الاتصال قيد الاستخدام. أنت لا تلصق أي مفتاح في المساعد، ولا يصل شيء مما توافق عليه إلى حساب آخر ولا إلى لوحة المشغّل ولا إلى كلمة مرورك.
لقطع الاتصال، احذف الموصل من مساعدك. والاتصال الذي تحذفه من جهة Sendveo يتوقّف فورًا ونهائيًا.
إن لم تُفتح أي صفحة لتسجيل الدخول، تأكّد من أن الرابط ينتهي بـ /mcp. وإن أبلغ مساعدك أنه لم يستطع الوصول إلى خدمة تسجيل الدخول، فمعنى ذلك أن Sendveo غير متاح من شبكتك: الفحص نفسه المستخدَم لفتح لوحة التحكم.
يستخدم ChatGPT وCursor وسائر المساعدين الداعمين لـ MCP الرابط نفسه في إعدادات خادم MCP البعيد لديهم، ويسجّلون دخولك بالطريقة نفسها.
الخيار ب: محلي (يعمل على جهازك)
إن كنت تفضّل إبقاء المفتاح على جهازك، شغّل خادم MCP الخاص بـ Sendveo محليًا. يتطلّب Node.js 22 أو أحدث. يشغّله المساعد عبر npx @sendveo/mcp ويمرّر له مفتاحك من خلال متغيّر البيئة SENDVEO_API_KEY.
أضف الكتلة أدناه إلى إعدادات MCP في مساعدك. في Claude Desktop هي claude_desktop_config.json؛ وفي Claude Code شغّل claude mcp add أو عدّل .mcp.json؛ ويستخدم Cursor الملف .cursor/mcp.json. الكتلة نفسها في كل مكان.
{
"mcpServers": {
"sendveo": {
"command": "npx",
"args": ["-y", "@sendveo/mcp"],
"env": {
"SENDVEO_API_KEY": "YOUR_SENDVEO_API_KEY"
}
}
}
}استبدل النص المؤقت بمفتاحك، وأعد تشغيل المساعد، ثم اطلب منه عرض أرقامك في Sendveo. إن توقّف الخادم فورًا، تحقّق من أن SENDVEO_API_KEY مضبوط.
بمفتاح API بدل تسجيل الدخول
تسجيل الدخول هو الطريقة المعتادة لاستخدام الرابط المستضاف. وإن كانت أداتك لا تستطيع ذلك، كسكربت أو استدعاء curl أو عميل لا يتيح سوى ضبط الترويسات، فالرابط نفسه يقبل أيضًا مفتاح API من Sendveo يُرسَل كرمز bearer. ويُوثَّق كل طلب بذلك المفتاح وحده ويبقى محصورًا في حساب ذلك المفتاح.
https://mcp.sendveo.com/mcpAuthorization: Bearer YOUR_SENDVEO_API_KEYالنطاقات
يحمل كل اتصال نطاقات، وكل أداة تحتاج إلى واحد منها. وعند تسجيل الدخول تعرض شاشة الموافقة هذه النطاقات بلغة واضحة قبل أن تضغط السماح. ويُمنح المفتاح الجديد كل النطاقات افتراضيًا، ما عدا اختصار القراءة فقط، فيعمل مع جميع الأدوات من البداية. وإن أبلغت أداة عن نطاق ناقص، عدّل المفتاح من قسم مفاتيح API في لوحة التحكم، أو أعد الربط ووافق على الصلاحية الناقصة.
| النطاق | الأدوات |
|---|---|
| numbers:read | list_numbers, get_number, get_billing, get_number_health, list_number_events, get_number_profile, get_number_picture |
| numbers:write | connect_number, refresh_qr, reconnect_number, disconnect_number, remove_number |
| messages:read | get_messages, get_message, get_attachment |
| messages:send | send_message, send_typing |
| messages:manage | react_to_message, remove_reaction, forward_message, delete_message, mark_chat_read |
| chats:read | list_chats, get_chat, list_labels |
| chats:manage | archive_chat, unarchive_chat, mute_chat, unmute_chat, sync_chat_history, create_label, update_label, delete_label, add_chat_label, remove_chat_label |
| contacts:read | get_contact, get_contact_picture, lookup_numbers |
| groups:read | list_groups, get_group, get_group_picture |
| groups:manage | create_group, add_group_members, remove_group_member, leave_group |
| webhooks:manage | get_webhook, set_webhook |
| *:read | كل نطاقات القراءة دفعة واحدة (اتصال للقراءة فقط): أدوات numbers:read وmessages:read وchats:read وcontacts:read وgroups:read، ولا شيء يكتب. |
أُضيفت النطاقات messages:manage وchats:read وchats:manage وcontacts:read وgroups:read وgroups:manage في 16 سبتمبر 2026. والمفتاح الذي أُنشئ قبل هذا التاريخ لا يحمل أيًا منها ولا يمكن إضافتها إليه: أنشئ مفتاحًا جديدًا من لوحة التحكم، أو أعد ربط المساعد ووافق على الصلاحيات. وكل ما عدا ذلك يواصل العمل بالمفتاح القديم.
الفوترة للقراءة فقط ويغطيها النطاق numbers:read: لا يوجد نطاق فوترة منفصل.
الأمان
- تسجيل الدخول لا يمنح المساعد كلمة مرورك أبدًا، ولا يخزّن الخادم المستضاف أي مفتاح API. يُوثَّق كل طلب ببيانات الاعتماد التي يحملها، ولا يحتفظ الخادم بأي منها.
- كل طلب معزول في الحساب الذي يقف خلف الاتصال. وميزات المشغّل غير متاحة عبر MCP.
- تُطبَّق حدود للمعدّل، لكل مفتاح ولكل مصدر. الاستجابة
429تعني: خفّف الوتيرة وأعد المحاولة بعد قليل. - تعامل مع المفتاح كأنه كلمة مرور. اختر مفتاحًا محدودًا بما يحتاجه المساعد فقط، وألغِه من لوحة التحكم إن تسرّب.
حل المشكلات
| ما تراه | ما العمل |
|---|---|
401 أو Invalid or missing Sendveo API key | إمّا أن اتصالك أُلغي أو لم يستطع التجدّد، وإمّا أن مفتاح API خاطئ أو غير مضبوط أو غير مُرسَل بصيغة Authorization: Bearer .... أعد الربط، أو انسخ مفتاحًا جديدًا من لوحة التحكم. |
No available slot | استخدمت كل مقاعد الأرقام لديك. اشترِ مقعدًا بالبطاقة أو فعّل مقعدًا برصيدك من قسم الفوترة في لوحة التحكم، ثم أعد تشغيل connect_number. |
429 أو Rate limit exceeded | طلبات كثيرة في وقت قصير. انتظر لحظة وأعد المحاولة، واطلب من المساعد تقليل عدد الاستدعاءات في المرة الواحدة. |
does not have the scope required | امنح المفتاح النطاق المفقود من قسم مفاتيح API، أو أنشئ مفتاحًا جديدًا بكل النطاقات. |