Minds Team

MCP Workflow Examples for AI Market Research

[ar] Block-first MCP workflows for cohesive multi-question Studies.

These examples assume you have connected the Minds MCP server for ChatGPT, Claude, and Cursor. If not, follow the Minds MCP setup guide first.

Guided Study Confirmation Workflow

For a broader task, multiple questions, a visual asset, structured outputs, or an explicit research method, the assistant follows this sequence:

User request
  -> create_study_plan (draft only)
  -> present captured intent, main source, questions, methods, and outputs
  -> ask every returned confirmation question
  -> revise_study_plan if the user answers or changes anything
  -> explicit user confirmation of the exact revision
  -> start_study_run
  -> get_study_status with the returned runId until collection settles
  -> read_study_summary

يجب ألا يوافق النموذج بصمت على أسئلته أو أساليبه. حافظ على بساطة Studies البسيطة. تحقق من list_research_methods: ينفذ Conjoint والأساليب الكمية المتاحة تصميماتها وحساباتها المسجلة؛ وتتطلب المتقدمة موافقة صريحة. راجع البدائل قبل التأكيد. للمادة المرتبطة بسؤال، يقرأ get_study_heatmap / start_study_heatmap التحليل البصري المستقل أو يبدأه. اعرض الأدلة المعادة فقط.

The original create_study_plan.request is planner input and is not sent verbatim to Minds. The preview labels the exact proposed respondent-visible question text; after confirmation, get_study_run exposes the confirmed or server-prepared question set as a visibility audit. By contrast, treat all text in a direct ask_study.question as respondent-visible input: the system may classify or reformat it, but any part can reach the Minds and influence their answers. Keep planner and MCP-client orchestration notes outside direct questions.

At the execution boundary, a plan_limited response means nothing was started: explain the Study-answer limit and required upgrade. During polling, status: plan_limited means the processor preserved partial answers but stopped the remaining questions at the paywall. Never call either case complete, and never hide it behind a generic error. After an upgrade, use a follow-up run for only the unanswered questions.

يُجاب عن التشغيل المؤكَّد بالطريقة التي يجيب بها مستجيب واحد عن استبيان: تُطرح الأسئلة بالترتيب، ولا يرى كل Mind إلا إجاباته السابقة في هذا التشغيل، لذلك قد تظهر تأثيرات الترتيب كما في الاستبيانات الميدانية. بدّل ترتيب الأسئلة عبر تشغيلات منفصلة عندما يتطلب التصميم ضبط هذه التأثيرات. لمنطق التخطي، أضف إلى السؤال askIf يحدد سؤال اختيار سابقًا وخياراته؛ تُستبعد Minds التي لم يُطرح عليها السؤال من نتائجه، ويُبلغ السؤال الذي لم يُطرح على أحد بالحالة not_asked وليس بالفشل. بعد التشغيل، يضع answerConsistency علامات على الإجابات التي تتعارض مع إجابات أخرى للـ Mind نفسه. العلامات للمراجعة فقط، ولا تُغيَّر الإجابات أبدًا.

This lifecycle plans research, not every Study action. A standalone “export this” request routes to export_study. “Show the same result differently” reads the existing Study or summary and changes presentation without queueing new respondents. Only create a new plan when the requested output changes what evidence the Study must collect.

Consumer Research Workflow

A typical workflow for a brand team researching a product launch:

Step 1: Create Consumer Personas

"Create five consumer personas for our skincare launch:
 - 'Lena, 22, Berlin' — Gen Z student, eco-conscious, discovers brands on TikTok
 - 'Maya, 19, London' — retail worker, trend-driven, shops based on peer recommendations
 - 'Aisha, 24, NYC' — junior designer, budget-conscious, cross-references Reddit reviews
 - 'Sarah, 35, Munich' — part-time teacher, mom of two, safety-first buyer
 - 'Jessica, 38, Chicago' — marketing manager, mom, trusts dermatologists over influencers"

Step 2: Organize into Demographic Audiences

"Create an Audience called 'Gen Z Women (18-25)' with Lena, Maya, and Aisha.
Create another Audience called 'Millennial Moms (30-42)' with Sarah and Jessica."

Step 3: Create a Research Study

"Create a Study called 'Sustainable Skincare Launch Study' with both Audiences"

Step 4: Run Survey Questions

"Plan one launch-research question block for the Study with these sections:
1. Price sensitivity: On a scale of 1-10, how likely are you to switch to a sustainable skincare brand if it costs 20% more?
2. Discovery: Where do you typically discover new skincare products?
3. Switching barriers: What would make you stop buying from your current skincare brand?
Show me the complete plan for confirmation, then run all three questions together."

Step 5: Analyze & Export

"Show me the analytics for the Sustainable Skincare Study"

"Export the Study as a PDF report for the brand team"

التحقق من جمهور

للتحقق من مدى قرب إجابات جمهور ما من استطلاعات حقيقية منشورة، يتبع المساعد هذا التسلسل:

إنشاء جمهور أو اختياره (10 Minds جاهزة على الأقل)
  -> validate_audience (يبحث عن الاستطلاعات المنشورة الأنسب أو يستخدم benchmarkIds التي تحددها)
  -> get_audience_validation مع batchId حتى تصبح قيمة status هي completed أو failed أو cancelled
  -> قراءة الدرجة المجمعة، ودرجة كل استطلاع ونطاقه بنسبة 95%، والأسئلة المستبعدة

يمكن لعملاء MCP الذين يستدعون الأدوات مباشرةً استدعاء validate_audience وget_audience_validation بالاسم. لا تظهر الأداتان بعد في اكتشاف الأدوات لدى المساعدين؛ والإمكانية نفسها متاحة الآن عبر v1 API وتبويب التحقق الخاص بالجمهور.

يستغرق التشغيل عادةً من 10 إلى 60 دقيقة، لذلك يستعلم المساعد عن الحالة بشكل دوري بدلاً من انتظار استدعاء واحد. ويعرض درجة كل استطلاع مع نطاقها ومن سألهم الاستطلاع، ويُبقي الأسئلة المستبعدة وأسبابها ظاهرة للمستخدم. ومن دون batchId، تُرجع get_audience_validation الصلاحية الإجمالية للجمهور وعمليات التحقق المشمولة المتبقية هذا الشهر.

قبل البدء، يتحقق المساعد من أن الجمهور قد استقر: قيمة readiness.fullyTrained هي true ومرحلة البحث لم تعد researching. أي تحقق يبدأ قبل ذلك يقيّم الجمهور كما هو في تلك اللحظة. أثناء التشغيل، تجيب Minds من ملفاتها التعريفية دون استرجاع مستندات معرفتها أو البحث في الويب. عند الإبلاغ عن درجة، يوضح المساعد أنها 100 ناقص متوسط الفرق المطلق لكل خيار إجابة، وليست نسبة الإجابات الصحيحة، لذلك قد تخفي الدرجة المرتفعة فرقاً كبيراً في خيار واحد. تتوفر الحصص البشرية والاصطناعية لكل سؤال وحدّ الضوضاء عبر واجهة v1 البرمجية.

قبل وصف نتيجة تخص جزءًا من المجتمع، يجب على المساعد قراءة respondentScope. فمثلًا قد يختار استبيان للتمريض 12 عقل Mind من Audience تضم 16 عاملًا صحيًا. اعرض النسبة مع عبارة «12 من أصل 16 من العقول، من طاقم التمريض»، ولا تقدمها بوصفها صلاحية جميع العاملين الصحيين. تميز التنبيهات بين الانتماء المؤكد ببيانات المجموعة والمدعوم بأدلة أوسع من الملف والحالات غير المؤكدة والتعارضات الصريحة.

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

مثال على طلب:

"تحقّق من جمهوري 'German SaaS buyers' مقابل استطلاعات منشورة وأخبرني بمدى قربه منها."

Use Cases

Product Concept Testing

Create Studies with target consumer Audiences to test product concepts, packaging, and naming before investing in production. Compare reactions across Audiences instantly.

Pricing Research

Survey synthetic consumers on willingness to pay at different price points. Identify the sweet spot where value perception meets margin targets.

Brand Perception Audit

Build Studies containing your target Audiences. Ask about brand awareness, trust, and purchase intent in one cohesive question block. Compare your brand against competitors through consumer eyes.

Campaign Message Testing

Test ad copy, taglines, and visual concepts with synthetic target audiences before committing media spend. Identify which messages resonate with which segments.

Market Entry Research

Entering a new market? Create consumer personas for the target region and test product-market fit, cultural sensitivities, and channel preferences.

Example Conversations

Quick Consumer Insight

You: "I need to understand how Gen Z and millennials in Europe feel about subscription-based skincare. Create one Audience for each segment and plan one cohesive Study asking what would convince them to subscribe."

AI Assistant: Drafts the Minds and audience structure, creates a Study, presents the exact proposed research question(s), and requests confirmation when the request expands into a broader Study. After execution, it reports the actual returned grouped responses without pre-writing a conclusion.

Expert Consultation

You: "Talk to my Brand Strategy expert about positioning a premium organic baby care line in the German market."

AI Assistant: Uses chat_with_mind to query the expert Mind and presents its actual response, preserving any returned citations. It labels the output as synthetic expert perspective rather than independent legal or regulatory advice.

Competitive Analysis

You: "Create a Study with 'Loyal Customers' Audiences for our top 3 competitors. Plan one block asking what they love most about their current brand and what frustrates them."

AI Assistant: Creates private synthetic Audiences, confirms the comparative multi-question research plan, runs the Study once, and reports only differences supported by the returned responses and calculations.

Automation guardrails

  • Keep new Audiences and Studies private unless the user explicitly requests a public link.
  • Planning does not start research. Confirm the exact latest revision before start_study_run.
  • Poll status tools instead of treating a timeout or elapsed duration as completion.
  • Require explicit confirmation immediately before lifecycle deletion actions.
  • Preserve citations, resource IDs, workspace/shared links, and download links exactly.
  • Treat plan_limited before execution as “nothing started” and status: plan_limited during execution as partial, preserved work.
  • Use list_research_methods before promising a named method; only executable: true is runnable.
  • Do not infer customer findings in advance. The example prompts in this guide describe workflows, not guaranteed conclusions.

For a full routing and safety contract, see the MCP operating guide for agents.

قد ينتهي جمع الإجابات بالحالة status: "partial" عند فقدان سؤال أو إجابة أحد Minds. أوقف الاستعلام الدوري عند هذه الحالة النهائية واشرح النقص؛ لا تعرض النتيجة على أنها مكتملة. يقيس progress.pct الأسئلة المنتهية وليس تغطية المشاركين. تحفظ مخرجات الأسئلة الجديدة outputData.responseCoverage مع expected وreceived وعضويات Audience/Mind المفقودة. يحصي progress.partial الأسئلة ذات التغطية غير المكتملة المسجلة. غياب بيانات التغطية في النتائج القديمة لا يثبت أن الجميع أجابوا. احتفظ بالإجابات الأصلية الصالحة ونتائجها دون تغيير، وراجع النواقص قبل بدء محاولة منفصلة.

انتظر الجاهزية ثم تابع

في ChatGPT Work على الويب أو Work مع Cloud على سطح المكتب، اطلب من Minds إخطارك عندما يصبح الجمهور جاهزاً أو تنتهي دراسة مؤكدة. يمكن أيضاً متابعة دراسة وافقت عليها مسبقاً بعد جاهزية الجمهور. راجع مسودة الجمهور وخطة الدراسة وأكدهما أولاً: الطلب الأول لا يوافق على خطة لم ترها، والحدث لا يسمح بأسئلة أو عمليات أو نفقات إضافية. يحدد المضيف قناة الإخطار؛ ولا تُضمن رسالة SMS.

ينتظر حدث الجمهور حتى تصبح Minds المنشأة قابلة للاستخدام؛ المعاينة التي تنتظر المراجعة ليست جاهزة. ينتظر حدث الدراسة حفظ تجميع النتائج. تُبلّغ الإجابات الناقصة والملخصات المؤقتة والفشل والإلغاء وحدود الخطة بقيمة ready=false. اقرأ العملية الأصلية عبر get_study_status({ study: { id: studyId }, runId }) واحتفظ بمعرفاتها؛ لا تعِد إرسالها لمجرد وصول حدث.

تدوم الاشتراكات حتى 24 ساعة ويجب تجديدها قبل refreshBefore. تُشفّر مفاتيح التوقيع وعناوين الاستدعاء عند التخزين. يعاد التحقق من الاتصال وسياسة الحساب والوصول إلى المورد عند التسليم. تُفحص الحالات المعلقة كل دقيقة وقد يضيف التحقق وإعادة المحاولة تأخيراً. لا توجد إعادة للأحداث التاريخية. إذا فشل الاشتراك فاحتفظ برابط مساحة العمل واقرأ الحالة؛ لا تعد بإخطار قبل نجاح التسجيل.

سمّ مهمة المراقبة باسم البحث والمرحلة المطلوبة، دون الوعد بالنجاح قبل معرفة النتيجة. اكتب الإشعارات بلغة المستخدم وابدأ بالنتيجة واسم البحث، ثم رابط مساحة العمل والإجراء التالي مباشرة. يجب أن تكون هذه البداية مفيدة بمفردها لأن معاينة بريد ChatGPT قد تختصر الرسالة الكاملة. أضف نتيجة موجزة وعدد المستجيبين أو الأسئلة فقط عندما تؤكدها النتائج المحفوظة. لا تضع أسماء الأحداث أو المعرّفات الداخلية أو حقول JSON في إشعارات الإكمال العادية إلا عند طلبها.

إذا كانت المسودة تنتظر التأكيد، فقل «جاهزة للمراجعة» وإن البحث لم يبدأ؛ واحتفظ بمعرّف المسودة الدقيق وإصدارها وأسئلة التأكيد في محادثة المراجعة الكاملة. عند الفشل أو الإكمال الجزئي، اقرأ get_audience_creation_progress({ operationId }) أو get_study_status({ study: { id: studyId }, runId }) للعملية الأصلية. اشرح السبب الذي أُعيد والتقدم المحفوظ والأجزاء الناقصة والإجراء التالي المتاح؛ وإذا لم يتوفر السبب فاذكر ذلك. لا تختلق سببًا ولا تكرر البحث تلقائيًا. أرسل إشعارات للمراحل المطلوبة فقط؛ وتابع الخطوات الوسيطة المصرح بها سابقًا دون إشعار إضافي ما لم تتطلب مراجعة أو تتعطل. يتحكم المضيف في قالب البريد وقنوات الإشعار، لذلك لا يمكن الوعد بزر مباشر في البريد أو برسالة نصية.

audience.creation.finished → operationId · study.run.finished → studyId, runId