
شنو هو Oh-My-McDonald
Oh-My-McDonald هو Skill ديال الذكاء الاصطناعي كيعتمد على الحوار، ومبني على MCP الرسمي ديال ماكدونالدز. تقدر تقول للذكاء الاصطناعي باللّغة الطبيعية شحال باغي تصرف، شنو كيعجبك وشنو بغيتي تستبعد، وهو يقلب ليك على الماكلة الحقيقية؛ وتقدر حتى تقارن الأثمنة بين المطاعم، وتشوف الكوبونات والحملات، وتحسب المعطيات الغذائية، ومن بعد التأكيد تسجل الماكلة اللي كلّيتي والمطاعم اللي مشيتي ليها.
المشروع كياخذ معطيات الخدمة من MCP الرسمي ديال ماكدونالدز، ومن بعد كيعالجها سكريبت Python محلي وكيحفظ السجلات وكيرندر الصور. ما كيحتاجش لواجهة ويب، وما كيعتمدش على OpenAI API ولا على أي API آخر ديال توليد الصور.
مشي لمستودع Oh-My-McDonald فـ GitHub
شنو المشاكل اللي كيحلها المشروع
- البحث فـ نفس المحادثة على الماكلة، والمطاعم، والأثمنة، والعروض، والمعلومات الغذائية.
- الاختيار من بين اقتراحات حقيقية رجعها MCP، حسب الميزانية والذوق والحوايج المستبعدة.
- مقارنة ثمن نفس المنتوج وبنفس الحجم فـ حتى لثلاثة ديال المطاعم المختارة.
- مشاهدة الكوبونات ديالك، وتواريخ انتهاء العروض، والحملات المنشورة.
- حساب الطاقة، والبروتين، والدهون، والكربوهيدرات، والصوديوم، والكالسيوم ديال الماكلة المطابقة بدقة.
- حفظ أطلس الماكلة وسجل زيارة المطاعم من بعد ما تأكد بلي كلّيتي فعلاً ولا مشيتي للمطعم.
- تحويل نتائج البحث لصور PNG بطابع voxel، ساهلة فالمشاهدة والمشاركة.
أربع مشاهد للتصور بطابع voxel
المشروع فيه renderer ديال voxel مكتوب بـ Python، ودابا فيه 43 موديل voxel غليظ، وكيولد الصور حسب قاعدة 8 بكسلات فكل خانة.
أطلس الماكلة
أطلس الماكلة كيستعمل قاعة عرض مقسمة، ومسالك فيها منعطفات، ومنصات لعرض الماكلة باش يبيّن التقدم ديال الاستكشاف. غير الماكلة اللي تكلات فعلاً وتأكد حفظها هي اللي كتضوي، أما اللي ما تأكداتش كتبقى بالرمادي.

تقويم العروض
تقويم العروض كيجمع الإحصائيات حسب تواريخ الصلاحية ديال الكوبونات ديالك، وكيبرز الكوبونات الصالحة اليوم، واللي غادي تسالي قريب، والحملات المنشورة. التفاصيل الكاملة تقدر تكون فصفحة تكميلية باش ما يتكدسش كلشي فصورة وحدة.

مقارنة أثمنة المطاعم
مشهد مقارنة الأثمنة كيرتب المطاعم المختارة فزنقة بطابع voxel، وكيعرض الثمن المناسب حدّ الباب. هاد الزنقة غير للتصور البصري ديال المعطيات، وما كتمثلش الطرق الحقيقية ولا العلاقة الجغرافية بين المطاعم.

مائدة التغذية
المشهد الغذائي كيحط الماكلة ديال الوجبة فطبق واحد، وكيستعمل وصل باش يعرض المعطيات الغذائية. الخضرة، والفواكه، والحليب غير اقتراحات مرافقة خارج الوجبة، وما كيدخلوش فالمجموع الغذائي ديال الماكلة اللي فالطبق.

التحضير قبل التثبيت
قبل ما تبدا، تأكد بلي الجهاز ديالك كيوفر الشروط التالية:
- Python 3.11 ولا نسخة أحدث.
- القدرة على إنشاء واستعمال بيئة افتراضية ديال Python بشكل عادي.
- تثبيت خط كيدعم العربية والصينية، وكيُنصح بـ Noto Sans CJK.
- إلى بغيتي البحث المباشر، وجد معطيات الولوج لـ MCP الرسمي ديال ماكدونالدز.
الاعتماديات الرئيسية ديال المشروع هي Pillow >=10,<13 و NumPy >=1.24,<3، والاعتماديات كاملة مسجلة فـ requirements.txt.
الخطوة الأولى: نسخ المشروع
git clone https://github.com/xiaozhangup/Oh-My-McDonald.git
cd Oh-My-McDonaldالخطوة الثانية: إنشاء بيئة افتراضية
فـ Linux ولا macOS نفّذ:
python -m venv .venv
source .venv/bin/activateمستعملو Windows PowerShell ينفذو:
.venv\Scripts\Activate.ps1الخطوة الثالثة: تثبيت الاعتماديات
python -m pip install -r requirements.txtمن الأحسن ديما تثبت الاعتماديات داخل البيئة الافتراضية المفعلة، باش ما يوقعش تعارض مع الحزم الأخرى ديال Python فالنظام.
الخطوة الرابعة: إعداد الخط الصيني
صور voxel فيها أسماء الماكلة، وأسماء المطاعم، وعناوين العروض بالصينية، وهادشي علاش خاص خط صيني خدام. من بعد تثبيت Noto Sans CJK، تقدر تحدد مسار ملف الخط باستعمال OMM_FONT.
export OMM_FONT="/path/to/your/font.ttf"بدّل المسار الموجود فالمثال بمسار ملف الخط الموجود فعلاً فالجهاز ديالك. إلا ما بانش النص الصيني مزيان فالصورة، أول حاجة خاصك تراجع متغير البيئة هادا ومسار الخط.
الخطوة الخامسة: عرض مساعدة الأوامر
python oh-my-mcdonald/scripts/oh_my_mcdonald.py --helpهاد الأمر كيعرض الأوامر الفرعية والخيارات اللي كيوفرها السكريبت المحلي المساعد. الشرح الكامل كاين فـ oh-my-mcdonald/references/commands.md داخل المستودع.
الربط مع MCP الرسمي ديال ماكدونالدز
الحصول على MCP Token
دخل لـ كونسول MCP ديال ماكدونالدز، وتبع التعليمات الرسمية فالصفحة باش تحصل على MCP Token. خاص بيانات الولوج تتحفظ فمتغيرات البيئة المحلية ولا فإعدادات Codex، وما خاصكش تكتب Token الحقيقي فملفات المشروع ولا ترفعو لمستودع Git.
إعداد Token عبر متغير البيئة
export MCD_MCP_TOKEN="YOUR_MCD_MCP_TOKEN"قراءة بيانات الولوج من إعدادات Codex
إلا كان ملف الإعدادات المحلي فيه من قبل إعداد mcd-mcp، تقدر تستعمل --codex-config باش تحدد الملف بشكل صريح:
python oh-my-mcdonald/scripts/oh_my_mcdonald.py \
--codex-config /本机/config.toml stores --city 武汉 --keyword 东澜岸الطريقتين بجوج كيقراو بيانات الولوج غير من الجهاز المحلي. تقدر ترجع للمسار الكامل ديال الربط فـ MCP_INTEGRATION.md فالجذر ديال المستودع.
أدوات MCP اللي كيستعملها المشروع
query-nearby-stores: البحث على المطاعم القريبة.query-meals: البحث على الماكلة.query-meal-detail: البحث على تفاصيل الماكلة.query-store-coupons: البحث على عروض المطعم.query-my-coupons: البحث على الكوبونات ديال المستخدم.calculate-price: حساب ثمن منتوج محدد.campaign-calendar: البحث فـ تقويم الحملات.list-nutrition-foods: جلب معطيات الماكلة اللازمة للحساب الغذائي.order-list: البحث فـ سجلات الطلبات.
الاستعمال الأساسي 1: البحث على مطعم
الأمر التالي كيقلب فمدينة ووهان على المطاعم اللي الاسم ديالها ولا الموقع ديالها مرتبط بـ «东澜岸»:
python oh-my-mcdonald/scripts/oh_my_mcdonald.py stores \
--city 武汉 \
--keyword 东澜岸من بعد ما تحصل على نتائج المطاعم، تقدر تستعمل ID صالح ديال المطعم باش تكمل البحث على تفاصيل الماكلة والأثمنة.
الاستعمال الأساسي 2: البحث على تفاصيل الماكلة
python oh-my-mcdonald/scripts/oh_my_mcdonald.py detail \
--store 1960151 \
--code 9900005456--storeكيتستعمل باش تحدد ID ديال المطعم.--codeكيتستعمل باش تحدد كود الماكلة.
الـ ID اللي فالمثال غير باش يوضح شكل الخيارات. فالاستعمال الحقيقي، خاصك تستعمل ID ديال المطعم وكود الماكلة الصالحين والراجعين فنتائج البحث الحالية ديال MCP.
الاستعمال الأساسي 3: البحث على ثمن السلة
محتوى السلة كيتعطى عبر ملف JSON، والمشروع كيحسب الثمن حسب المطعم المحدد وخطة الاختبار الحالية.
python oh-my-mcdonald/scripts/oh_my_mcdonald.py quote \
--store 1960151 \
--basket examples/basket.jsonفمقارنة الأثمنة بين المطاعم، خاصك تتأكد بلي كتقارن نفس المنتوج ونفس الحجم. المشروع كيقارن حتى لثلاثة ديال المطاعم المختارة، وما كيستنتجش ثمن مطاعم أخرى اعتماداً على نتائج جزئية.
الاستعمال الأساسي 4: مشاهدة موديلات voxel بلا إنترنت
إلا ما كانش عندك MCP Token دابا، تقدر أولاً تجرب بيئة التصيير المحلية وتشوف الموديلات المدمجة:
python oh-my-mcdonald/scripts/oh_my_mcdonald.py \
--out output modelsالنتائج كتتحفظ فـ output. هاد الخطوة مناسبة باش تتأكد بلي Pillow وNumPy والخط الصيني مهيئين بشكل صحيح.
استعمال Skill فعميل الذكاء الاصطناعي
المشروع كيوفر oh-my-mcdonald/SKILL.md باش يشرح لعملاء الذكاء الاصطناعي اللي كيدعمو Skill القدرات ديال المشروع، وطريقة الخدمة، والقيود ديالو. العميل خاصو حتى يكون قادر يربط مع MCP وينفذ الأوامر المحلية.
المسار النموذجي كيكون هكذا:
- المستخدم كيطلب باللّغة الطبيعية حاجة مرتبطة بالميزانية، والذوق، والمطعم، والعروض، ولا التغذية.
- الذكاء الاصطناعي كيختار أداة MCP المناسبة باش يجيب المعطيات الحقيقية.
- الذكاء الاصطناعي كينقي النتائج الراجعة حسب الميزانية والحوايج المستبعدة.
- كيستعمل سكريبت Python المحلي عند الحاجة لمعالجة المعطيات.
- إلا كانت الحاجة للتصور، كيتولد PNG بواسطة renderer المحلي.
- إلا كان الأمر متعلقاً بسجل الماكلة ولا زيارة المطعم، كيتسنى التأكيد الصريح من المستخدم قبل ما يكتب السجل.
تقدر تطلب من الذكاء الاصطناعي شي حاجة بحال:
- عندي اليوم ميزانية 35 يوان، وما بغيتش شي حاجة حارة، شنو كتقترح؟
- اختار ليا عشوائياً واحد من الماكلة الحقيقية اللي كتنطبق عليها الشروط.
- قارن ثمن هاد الوجبة فثلاثة ديال المطاعم القريبة.
- شوف ليا الكوبونات اللي نقدر نستعمل اليوم وآخر الحملات.
- حسب ليا الطاقة والبروتين فهاد الوجبة.
- كنأكد بلي كلّيت هاد البرغر دابا، عاونّي نسجلو.
- دير ليا صورة أطلس للماكلة اللي كلّيت.
خاص الماكلة المرشحة تكون جاية من نتائج البحث ديال MCP، وما يمكنش للذكاء الاصطناعي يخترعها. فالاختيار العشوائي الواحد، يمكن استعمال حتى لستة ديال تركيبات الماكلة المرشحة.
تقنيات متقدمة ومبادئ الاستعمال
حدد المطعم والمنتوج والحجم من الأول
الثمن كيتأثر بالمطعم، وحجم المنتوج، وخطة العرض. قبل المقارنة، خاصك تثبت المنتوج والحجم، وتخلي الذكاء الاصطناعي يوضح المطاعم المختارة فهاد العملية. بهاد الطريقة كتكون النتائج قابلة للمقارنة.
تعامل بدقة مع المعطيات الغذائية الناقصة
الحساب الغذائي كيستعمل غير الماكلة المطابقة بدقة. إلا كانت شي خانات غذائية ناقصة، خاصك تبيّن كل خانة ناقصة بوحدها؛ ما تحولش القيمة الناقصة لصفر، وما تعوضهاش بمنتوج الاسم ديالو مشابه ولكن ما متأكدش منو.
فرّق بين إحصائيات الوجبة والاقتراحات الخارجية
مائدة التغذية تقدر تعرض اقتراحات إضافية بحال الخضرة، والفواكه، والحليب، ولكن القيمة الغذائية ديال الوجبة كتحسب غير الماكلة اللي فالطبق. ملي كتفسر الصورة المولدة، ما خاصكش تدخل العناصر الإضافية فالمجموع.
خاص التأكيد قبل التسجيل
سجل الطلبات غير معلومات خاصها التأكيد، وما كيبرهنش بوحدو بلي المستخدم كلّى شي منتوج. غير من بعد ما يأكد المستخدم بشكل واضح بلي كلّاه فعلاً، يقدر المشروع يحفظ السجل ويضوي العنصر فالأطلس؛ ونفس المبدأ كيتطبق على سجل زيارة المطاعم.
الفهم الصحيح لتقويم العروض
التقويم كيحسب عدد الكوبونات حسب تواريخ الصلاحية ديال الكوبونات الشخصية. واش الكوبون يقدر يتستعمل فشي وقت، ولا مطعم، ولا منتوج معين، خاصو يبقى تابع للشروط المحددة اللي رجعها MCP.
حماية بيانات الولوج المحلية
الأفضل تقرا Token عبر متغير البيئة MCD_MCP_TOKEN ولا عبر إعدادات Codex المحلية، وما تكتبش بيانات الولوج فالسكريبتات، ولا فملفات JSON التجريبية، ولا فلقطات الشاشة، ولا فملفات مراقبة الإصدارات.
تشغيل الاختبارات الآلية
المشروع كيستعمل Python مع unittest، وتقدر تشغّلو من المجلد الرئيسي ديال المستودع:
python -m unittest discover -s tests -vالاختبارات الحالية المسجّلة فـ README كتوصل لـ 51 اختبار، وكتستعمل معطيات اصطناعية باش تتحقّق من منطق معالجة الأعمال، والإخراج، والعرض. تفاصيل التحقّق من استعلامات MCP الحقيقية والقيود ديالها مسجّلة فـ docs/VALIDATION.md.
حدود التنفيذ اللي خاص تعرفها
- المشروع ما كيدعمش الطلب التلقائي، ولا الأداء، ولا الحصول على القسائم.
- المشروع ما كيوفّرش المزامنة السحابية ولا الاستطلاع الدوري فـ الخلفية.
- مقارنة الأثمنة كتغطي حتى لثلاثة محلات مختارة، وكتخص غير نفس المنتوج، ونفس الحجم، ونفس سيناريو الاختبار الحالي.
- الزنقة ديال الفوكسلات غير مشهد توضيحي، وما فيهاش طرق حقيقية ولا علاقات جغرافية حقيقية.
- بيانات MCP الحقيقية اللي باينة فـ المعاينة هي لقطة ديال تاريخ محدد، وما كتمثّلش النتائج المباشرة من بعد.
- سجلات الماكلة وسجلات زيارة المحلات خاصها موافقة المستخدم.
نظرة سريعة على مجلدات المشروع
oh-my-mcdonald/SKILL.md: ملف وصف Skill ديال عميل الذكاء الاصطناعي.oh-my-mcdonald/scripts/oh_my_mcdonald.py: السكريبتات المحلية المساعدة والمدخل الرئيسي للأوامر.oh-my-mcdonald/references/commands.md: مرجع مفصّل للأوامر.docs/images/: صور معاينة المشهد.docs/VALIDATION.md: نتائج التحقّق من الاستعلامات الحقيقية والقيود ديالها.examples/basket.json: مثال على JSON ديال السلة.MCP_INTEGRATION.md: شرح ربط MCP ومسار الاستدعاء.tests/: الاختبارات الآلية.
الخلاصة
Oh-My-McDonald كيجمع بين MCP الرسمي ديال ماكدونالدز، والتفاعل باللغة الطبيعية، والعرض المحلي بالفوكسلات. وبهذا كيعاون فاختيار الماكلة، ومقارنة الأثمنة، وتحليل القيمة الغذائية، وكيقدر حتى يبني سجلات شخصية للاستكشاف من بعد تأكيد المستخدم. من الأحسن تبدا بإكمال العرض بالنموذج غير المتصل والاختبارات، ومن بعد تهيّأ MCP Token؛ وفكل ما يتعلّق بالأثمنة، والعروض، والقيمة الغذائية، خاصك تعتمد ديما على المعطيات الحقيقية اللي كيرجعها MCP فداك الوقت.
المشروع مفتوح المصدر بترخيص MIT، وتقدر تبلّغ على المشاكل عبر GitHub Issues، ولا تساهم فالتطوير بإرسال Pull Request.
