MELLOW HUB · ملاحظات ميدانية

MCP لـ Instagram: انشر الصور ومنشورات الكاروسيل ومقاطع Reels

دليل MCP لـ Instagram في Mellow Hub: متطلبات الحساب، والفرق بين تسجيل الدخول عبر Instagram وعبر Facebook، ومُدخلات منشورات مُختبَرة، والجدولة، وحلول لأخطاء التحقق الشائعة.

من Mellow · آخر تحديث

هل يستطيع مساعد ذكاء اصطناعي النشر على Instagram عبر MCP؟

نعم، إذا كانت لدى المساعد أداة نشر مصرّح بها وحساب Instagram متصل ومؤهل. يتيح Mellow Hub هذه الأدوات على العنوان https://www.mellow.world/mcp. ويستطيع عميل متوافق مع MCP البعيد أن يتحقق من صحة المنشور، وأن يجدوله ضمن التفويض الذي منحه المالك، وأن يقرأ نتيجته النهائية في الوجهة.

ابدأ بالحساب وبمسودة حقيقية واحدة. يوفّر MCP الربط بالأدوات، لكن Instagram هو من يقرر ما إذا كان النشر ممكنًا بهذا الحساب وهذه الأذونات والوسائط. يتناول هذا الدليل Mellow Hub. أما لتخطيط محتواك الخاص على Instagram من iPhone أو الويب، فراجع دليل التخطيط في Mellow المنفصل.

ما نوع حساب Instagram الذي أحتاج إليه؟

استخدم حساب Instagram احترافيًا: حساب أعمال أو حساب صانع محتوى. الحساب الشخصي غير مؤهل لمسار النشر هذا عبر API. في Hub، افتح الحسابات، واختر Instagram، وأكمل ربط الحساب بنفسك.

طريقة تسجيل الدخولما تحتاج إلى تجهيزه
تسجيل الدخول عبر Instagramمسار تسجيل الدخول المباشر. لا تشترط واجهة API التي توفّرها Meta لتسجيل الدخول عبر Instagram وجود صفحة Facebook مرتبطة.
تسجيل الدخول عبر Facebookحساب Instagram الاحترافي مرتبطًا بصفحة Facebook، مع صلاحية الوصول المناسبة إلى الصفحة.

هذان مساران مختلفان للتفويض. اختر المسار الذي يناسب إعداد حسابك؛ فإكمال أحدهما لا يمنح كل أذونات الآخر. توثّق مجموعة Instagram API الرسمية من Meta هذا الفرق. أما الاتصال المُدار الذي يستخدمه Hub فموصوف في متطلبات الحسابات لدى Post for Me.

تحتاج Stories إلى تحقق إضافي من الأهلية: فوثائق تسجيل الدخول عبر Facebook من Meta تقصر نشر Stories على حسابات الأعمال. وظهور تنسيق ما في قواعد الإدخال لدى Hub لا يعني أن حسابك يستطيع نشره. تأكّد من الحساب المتصل ومن نتيجة التسليم قبل الاعتماد على هذا التنسيق.

اربط المساعد وتحقّق من صلاحياته

  1. اربط حسابك على Instagram في Hub. معرّف القناة الذي يُعاد إليك يحدد هذا الاتصال؛ واسم المستخدم على Instagram لا يغني عنه.
  2. أضف نقطة نهاية Hub في عميل يدعم MCP البعيد عبر Streamable HTTP. اتبع مسار OAuth الخاص به، أو استخدم مفتاح Hub أنشأه المالك إذا كان العميل يدعم ذلك. يعتمد الإعداد والتوفّر على العميل. واحفظ بيانات الاعتماد في إعداداته الآمنة.
  3. في شاشة موافقة OAuth لدى Hub، اختر الأذونات والقنوات والوضع والحد اليومي الأقصى ومدة الصلاحية. يُعِدّ وضع المراجعة العمل ليوافق عليه شخص. أما الطيار الآلي فيسمح بالنشر ضمن حدود التفويض. اعرض الوصول الناتج أو ألغِه من الوكلاء.
  4. استدعِ whoami وlist_channels. تحقّق من الوضع الفعلي، واستخدم معرّف قناة Instagram المُعاد. واقرأ list_platforms لمعرفة القواعد الحالية.
  5. جهّز وسائط يمكن الوصول إليها. استخدم register_media لفحص عنوان URL عام موجود، أو request_upload_url لرفع ملف محلي. وأبقِ عنوان URL الناتج متاحًا حتى موعد النشر المخطط له.

للاطلاع على تسلسل الاتصال الكامل وعقد النتيجة، استخدم دليل سير العمل عبر MCP. فإضافة موصّل أو لصق موجّه لا يكفي وحده لتفويض حساب Instagram.

اربط Mellow Hub في Claude بصلاحية القراءة فقط أولًا

في حساب Claude تتوفر فيه الموصّلات المخصصة، افتح تخصيص ← الموصّلات ← إضافة موصّل مخصص (Customize → Connectors → Add custom connector). استخدم الاسم Mellow Hub وعنوان URL لخادم MCP البعيد https://www.mellow.world/mcp. وإذا كنت قد أضفته من قبل، فاستخدم ذلك الموصّل الموجود. يستطيع Claude اكتشاف إعدادات المصادقة من هذا العنوان.

إعداد الاتصالالقيمة
آلية النقلStreamable HTTP
المصادقةمطلوبة دائمًا
عميل OAuthيُسجَّل تلقائيًا عبر DCR؛ ولا يوجد سرّ عميل تحتاج إلى نسخه.
  1. افتح الموصّل واختر اتصال (Connect). سجّل الدخول إلى Mellow إذا طُلب منك ذلك. يجب أن تُظهر شاشة الموافقة أن التطبيق الذي يطلب الوصول هو Claude.
  2. في الفحص الأول، أبقِ channels:read وposts:read وحدهما محدَّدين. يسمح هذان الإذنان بقراءة الاتصال والتحقق من صحة المُدخلات. ولا يسمحان برفع الوسائط أو إنشاء المنشورات أو النشر.
  3. اختر قناة Instagram المحددة التي تريدها، ووضع المراجعة. وعيّن مدة صلاحية قصيرة، مثل يوم واحد، وحدًا يوميًا أقصى. يُرفض الاختيار إذا لم تُحدَّد أي قناة؛ ويتطلب الوصول إلى القنوات التي تُضاف مستقبلًا اختيارًا صريحًا.
  4. راجع هذا التفويض ووافق عليه بنفسك. بعد العودة إلى Claude، تأكّد من أن الموصّل متصل. اطلب منه استدعاء whoami، ثم list_channels للحصول على معرّف القناة المسموح بها. وتحقّق من الأذونات والقنوات ومدة الصلاحية الممنوحة في قائمة الوصول في Hub: فقد لا يعرض العميل سوى الملخص النصي للأداة، وهو لا يتضمن كل الحقول المنظَّمة.
استخدم Mellow Hub فقط. استدعِ whoami، ثم list_channels.
استخدم قناة Instagram الوحيدة التي فوّضتُ الوصول إليها. استدعِ validate_post مرتين
بالتعليق "Mellow test - example only": أولًا مع media []، ثم مع
media ["https://example.com/test.jpg"]. هذه مُدخلات توضيحية.
لا تجلب محتوى عنوان URL ولا تقرأ المنشورات الموجودة. أبلغني بنتيجة كل عملية تحقق.
لا تُنشئ أو تجدول أو تلغِ أو تنشر أي شيء.

عندما يطلب Claude استخدام أداة، افحص اسمها ومُدخلاتها قبل السماح بالاستدعاء. في هذا الفحص، اسمح بكل استدعاء مرة واحدة. عنوان URL الوارد في المثال يختبر قواعد الإدخال فقط، وليس صورة حقيقية للنشر. والتحقق لا ينزّل الوسائط ولا يثبت التسليم إلى Instagram.

ما الذي أعاده فحص الاتصال الفعلي

في 9 سبتمبر 2026، أكمل اتصال حقيقي واحد من Claude على الويب مسار OAuth بالأذونات channels:read posts:read فقط، مع قناة Instagram واحدة، ووضع المراجعة، ومدة صلاحية يوم واحد. استدعى Claude الأداتين whoami وlist_channels، ثم validate_post مرتين. وفحصنا ردود الأدوات إلى جانب ملخص المساعد.

المُدخلالنتيجة المرصودة
تعليق دون وسائطرُفض: يحتاج Instagram إلى عنصر وسائط واحد على الأقل.
التعليق نفسه مع عنوان URL للصورة التوضيحيةاجتاز فحص الإدخال لقناة واحدة.

لم يُنشأ أي منشور ولم يُنشر أي شيء خلال هذا الفحص. ثم ألغينا التفويض التجريبي من الوكلاء، وتحققنا من إلغاء رمز الوصول ورمز التحديث كليهما. وهذا يثبت صحة مسار الاتصال والتحقق هذا بعينه، لا النشر على Instagram، ولا التوافق مع كل إعدادات العملاء.

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

اختر التنسيق قبل التحقق

يطبّق Hub حاليًا على Instagram حدًا أقصى للتعليق قدره 2,200 حرف، ونطاقًا عامًا لعدد عناصر الوسائط من 1 إلى 10. وتضيّق مواضع النشر هذا النطاق. هذه هي قواعد الإدخال التي يفرضها Hub؛ وقد تكون أكثر تحفظًا من محرر Instagram نفسه.

المنشورالموضع في Hubالمُدخل المطلوب تجهيزه
صورة في الخلاصةtimelineصورة واحدة.
كاروسيل صورtimelineمن صورتين إلى 10، بالترتيب الذي تريده.
Reelreelsفيديو واحد بالضبط. يتحكم shareToFeed في مشاركته في الخلاصة الرئيسية.
Storystoriesصورة واحدة أو فيديو واحد بالضبط، رهنًا بأهلية الحساب.

يرفض Hub حاليًا الجمع في منشور واحد بين عناوين URL يتعرّف عليها كصور وأخرى يتعرّف عليها كفيديوهات. استخدم نوعًا واحدًا من الوسائط في مُدخلات الكاروسيل. هذا قيد في Hub، وليس ادعاءً بأن Instagram نفسه لا يدعم الكاروسيل المختلط أبدًا.

سلوك مواضع النشر موثّق لدى Post for Me. ويبقى على حجم الملف وبرامج الترميز ونسبة الأبعاد والمدة أن تستوفي شروط Instagram. لا ينزّل مدقّق الإدخال في Hub الملف ولا يقيسه، وقد يبقى نوع الوسائط غير معروف إذا لم يكن لعنوان URL امتداد يمكن التعرّف عليه.

ثلاثة مُدخلات منشورات يمكنك تكييفها

مرّر أحد هذه الكائنات بوصفه معاملات validate_post. ضع قيمك الخاصة مكان معرّف القناة النموذجي وعناوين URL للوسائط والتعليق والطابع الزمني لعام 2030. التاريخ توضيحي عمدًا؛ استخدم اللاحقة Z للدلالة صراحةً على UTC، أو إزاحة المنطقة الزمنية. فُحصت هذه الحمولات بمحلّل Hub ومدقّقه باستخدام قناة اصطناعية. وهي ليست إيصالات نشر فعلي على Instagram.

One feed photo

{
  "channels": [
    "spc_your_instagram_channel"
  ],
  "scheduledAt": "2030-01-15T10:00:00Z",
  "caption": "A closer look at the glaze on this cup.",
  "media": [
    "https://cdn.example.com/your-cup.jpg"
  ],
  "options": {
    "instagram": {
      "placement": "timeline"
    }
  }
}

An ordered photo carousel

{
  "channels": [
    "spc_your_instagram_channel"
  ],
  "scheduledAt": "2030-01-15T10:00:00Z",
  "caption": "From clay to finished cup, in three stages.",
  "media": [
    "https://cdn.example.com/your-clay.jpg",
    "https://cdn.example.com/your-process.jpg",
    "https://cdn.example.com/your-cup.jpg"
  ],
  "options": {
    "instagram": {
      "placement": "timeline"
    }
  }
}

One Reel

{
  "channels": [
    "spc_your_instagram_channel"
  ],
  "scheduledAt": "2030-01-15T10:00:00Z",
  "caption": "How this handle is attached.",
  "media": [
    "https://cdn.example.com/your-process.mp4"
  ],
  "options": {
    "instagram": {
      "placement": "reels",
      "shareToFeed": true
    }
  }
}

يجب أن يكون عنوان URL للوسائط الحقيقية متاحًا لخدمة النشر عند جلبه. وتصف Meta هذا الشرط في مرجع نشر المحتوى الخاص بها. ولا يصلح بديلًا مسارٌ محلي، أو رابطٌ إلى مساحة تخزين خاصة، أو عنوانُ URL موقَّع انتهت صلاحيته.

أصلح المشكلة المُبلَّغ عنها قبل إنشاء المنشور

اقرأ ok وissues وnotes في نتيجة التحقق. فقد ينجح طلب HTTP ويحمل مع ذلك ok: false. وتذكر المشكلة القناة والحقل المعنيَّين.

رمز المشكلةما الذي تغيّره
channel_not_connectedأكمل ربط الحساب واستخدم معرّف القناة المُعاد له.
media_requiredأرفق وسائط؛ فلا يمكن نشر منشور نصي فقط على Instagram عبر سير العمل هذا.
media_too_manyقلّل مجموعة الوسائط إلى الحد الأقصى الحالي في Hub، وهو 10؛ أما Reel أو Story فالعدد المسموح به فيهما أقل.
reel_media_countاستخدم فيديو واحدًا لكل Reel. ولإنشاء عدة Reels، جهّز منشورات منفصلة.
reel_needs_videoقدّم فيديو لمقطع Reel، أو اختر موضع الخلاصة للصور.
story_media_countاستخدم عنصرًا واحدًا في كل طلب نشر إلى Stories.
media_kinds_mixedضع الصور والفيديوهات المعروفة النوع في منشورات Hub منفصلة.
caption_too_longاختصر التعليق إلى 2,200 حرف أو أقل.

جرّب أداة فحص المنشورات المجانية قبل ربط أي حساب. فهي تستخدم قواعد الإدخال نفسها مع وجهات نموذجية. أما التحقق بعد المصادقة فيفحص القنوات المتصلة فعليًا؛ ولا تضمن أيٌّ من النتيجتين أن يُسلِّم المزوّد المنشور في النهاية.

جدوِل مرة واحدة وتحقّق من النتيجة على Instagram

بعد تحقق ناجح، استدعِ create_post بالمنشور المقصود نفسه وبقيمة ثابتة لـ idempotencyKey، مثل ceramics-instagram-reel-slot-001. الإنشاء هو الخطوة التي تُعِدّ النشر الفعلي أو تجدوله. في وضع المراجعة ينتظر المنشور الموافقة؛ وفي وضع الطيار الآلي قد يمضي النشر في الموعد المختار. وتحقّق أولًا من حصة خطتك الحالية.

احتفظ بمعرّف المنشور المُعاد. وإذا ضاع رد الإنشاء، فأعد إرسال الطلب نفسه بالمفتاح نفسه. لا تولّد مفتاحًا جديدًا لمجرد انتهاء المهلة. أما المنشور الذي تغيّر فيحتاج إلى مفتاح جديد.

استدعِ get_post وافحص عنصر Instagram في targets. اقرأ حالته النهائية، أو عنوان URL العام، أو الخطأ. قبول Hub للمنشور ليس دليلًا على أن Instagram نشره. وفي الطلب الموجَّه إلى عدة شبكات، قد تنجح وجهة أخرى بينما يفشل Instagram.

لتكاملات الخوادم التي تستخدم HTTP مباشرةً، تقدّم وصفة الجدولة عبر REST الطلبات المكافئة وترويسة منع التكرار. وفي الإعداد الأول، اربط قناة Instagram الخاصة بك وتحقّق من صحة مسودة واحدة قبل إعداد جدول نشر متكرر.