Skip to content
Intel-QPublic

About

麦当劳 MCP 实战示例 · 麦当劳消消乐 HTML5 单文件小游戏 | 2026 麦当劳开发者创新挑战参赛作品 | 调用真实营养数据(kcal)·零依赖纯前端·小程序 web-view 直接运行 | 会员互动·城市榜·试吃券奖池 | match-3 Demo · hackathon 2026

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

麦当劳「消消乐」· 会员互动 Demo

🏆 麦当劳程序员创意开发大赛(M-China 麦当劳开发者创新挑战)参赛作品 赛事官方仓库:https://github.com/M-China/mcd-developer-innovation-challenge

一句话价值:把会员等餐、餐后的碎片时间,变成一场有麦当劳真实产品陪伴的消消乐——玩得开心、看得见新品,城市榜每周发试吃券,是一个有人文温度的会员互动 Demo。

作品内容(产品、真实 kcal 营养数据)在开发阶段通过麦当劳 MCP 获取真实数据后融入作品,符合活动「开发时调用 MCP 取内容」的要求;游戏内直接展示 kcal,也让数据来源可被一眼验证。详细取数记录见 MCP_INTEGRATION.md。

从技术形态上看,本作品是一个面向微信小程序场景的 HTML5 单文件消消乐(match-3)——Demo 阶段以单个 HTML 文件交付,浏览器或直接嵌入小程序 web-view 打开即可运行。


一、玩法与功能

核心玩法(消消乐)

  • 8×8 棋盘,点击或滑动交换相邻方块,横 / 竖 ≥3 个相同即消除,连锁掉落补充;
  • 手机端支持「点选交换」与「滑动交换」两种手势(Pointer Events 统一处理);
  • 每消除 1 个方块获得「kcal ÷ 100」m 币——kcal 为麦当劳 MCP 营养库真实数据;
  • 单局 90 秒,倒计时结束自动结算,弹窗展示本局每款产品消除明细与 kcal 汇总。

会员与赛季机制

  • 每周赛循环:周五 00:00 → 周四 23:59 累计,周四 23:59 冻结进奖池,周五 00:00–23:59 领奖,周五 23:59 未操作清零;
  • 防沉迷:每日最多 50 局、单日 m 币上限 20000;
  • 分享有礼(二选一,每日 1 次):达到当日限额时可分享,选择「限额翻倍(50→100 局)」或「得 200 m 币」;
  • 对战模式:双人同屏(同设备轮流各 90 秒)、分享邀请朋友异步约战(各自玩 90 秒比 m 币);对战 m 币同样累计进本周,无论输赢。

奖池与发券

  • 推广导向券:新品免费试吃券 / 主推套餐买一送一 / 新品第二份半价(前 3 名专属),第 4–100 名得指定新品 8 折入围券;
  • 各城市独立排名,每城前 100 名发券;城市由会员登录授权定位自动确定,无需手动选择;
  • 长榜单折叠:只显示前 10 名 + 我的名次(中间省略),可点「查看完整榜单」展开全部。

二、用的真实麦当劳数据

数据 来源 用在哪里
160 个餐品营养成分(kJ / kcal / 蛋白质 / 脂肪 / 碳水 / 钠 / 钙) 麦当劳 MCP list-nutrition-foods 筛选 6 款演示方块、标注真实 kcal
6 款方块产品真实 kcal:猪柳蛋麦满分 387 / 中薯条 289 / 麦乐鸡5块 213 / 圆筒冰淇淋 93 / 大杯玉米杯 87 / 可乐中杯 147 同上 游戏计分(kcal÷100)与结算明细
套餐 / 菜单信息 麦当劳 MCP query-meals 产品筛选研究

调用时间、返回字段与嵌入方式详见 MCP_INTEGRATION.md。 Demo 阶段只筛选 6 款产品做演示;生产形态下方块可由服务端周期性调用 MCP 拉取「在售 / 当季新品 / 主推活动」产品池。


三、怎么运行

零依赖、单文件、双击即玩:

  1. 下载 mcdonalds_match.html 到本地;
  2. 用任意现代浏览器(Chrome / Safari / Edge)直接打开;
  3. 点「▶ 开始游戏」即可。手机端打开同样可用(支持触摸滑动)。

无需安装、无需构建、无需后端、无需任何密钥。

备注:Demo 使用 localStorage 持久化;在部分隐私 / 沙箱环境下存储会被禁用,此时内存状态照常、仅不落盘,不影响演示。


四、使用示例

  1. 开局:点「▶ 开始游戏」→ 90 秒倒计时开始;
  2. 消除:点两个相邻方块交换,或直接滑动某块朝相邻方向划动;≥3 个相同即消除并获得 m 币;
  3. 结算:倒计时归零自动弹窗——本局每款产品消除个数与 kcal、总 kcal、获得 m 币、本周累计;
  4. 分享提限:达到当日 50 局上限后点开始,会提示可分享二选一(限额翻倍 / 200 m 币);
  5. 对战:「⚔️ 对战」页选双人同屏,或「分享邀请朋友对战」生成邀约海报 / 链接后各自开玩,结束比 m 币;
  6. 领奖:「🎟️ 奖池」页按定位城市看排名,前 100 名可领券或兑积分。

五、目标用户

  • 参赛评审:快速把玩完整闭环(游戏 → 分享 → 对战 → 城市榜 → 奖池发券);
  • 麦当劳会员(成品形态):等餐陪伴、亲子友好、餐后轻互动,新产品以游戏方块形式自然曝光;
  • 运营 / 市场(成品形态):方块即推广位,奖池券可配置为新品试吃 / 买一送一等,按城市独立发券。

六、生产形态与资源衔接(规划,非本次活动要求)

  • m 币口径:按固定口径 10000 m 币 = 1 普通积分 换算,登录授权后归集麦当劳会员积分体系;
  • 优惠券去向:游戏内兑换的券自动同步到麦当劳会员小程序「卡包」,经会员 / 券系统发放到账户,到店核销;
  • 产品池刷新:方块产品由服务端周期性调用 MCP 刷新(在售 / 新品 / 活动池),前端不直连 MCP、不持有密钥;
  • 游戏只负责「玩法 + 发奖」环节,会员账户与券资产归麦当劳自有体系。

七、仓库文件清单(对照参赛要求)

文件 赛事要求 状态
README.md 项目介绍、安装方法、使用示例、目标用户(文件名不可改动) ✅ 本文件
CONTEST_DECLARATION.md 参赛声明,文件名及内容均不可改动,须用官方原件 ✅ 官方原件,未改一字(取自官方仓库根目录)
MCP_INTEGRATION.md 实际使用的 MCP Server / Tool、调用流程、业务价值(文件名不可改动) ✅
mcdonalds_match.html 源代码(项目主体,形式不限) ✅ 单文件游戏原型
mcdonalds_nutrition.html 源代码(MCP 营养数据参考表,附属) ✅
mcp-config.example.json 脱敏配置示例,仅环境变量占位符 ✅ 不含任何真实密钥
workbuddy.md WorkBuddy 专项奖励所需(文件名不可改动),记录从需求到成品的完整开发过程 ✅ 已导出

另附选配文件(非赛事强制要求,用于被发现 / SEO):index.html(SEO 落地页,建议用 GitHub Pages 托管)、SEO_GUIDE.md(手动配置与发布清单)。


八、合规与免责声明

  • 本作品为独立开发的参赛 Demo,非麦当劳官方产品,未获麦当劳品牌背书;
  • 游戏内 kcal 为麦当劳 MCP 营养库真实字段,与麦当劳中国菜单的法定营养标识一致,属透明信息披露;该数值仅用于游戏积分换算,不构成营养 / 饮食建议;
  • 餐品信息、价格及供应状态以麦当劳官方渠道实时结果为准;
  • 对「麦当劳」等名称的使用仅限描述性指代,不构成任何商标授权;
  • 本项目未执行任何真实下单、领券或积分消费操作;所有会员、对战成绩、发券均为本地模拟。

About

麦当劳 MCP 实战示例 · 麦当劳消消乐 HTML5 单文件小游戏 | 2026 麦当劳开发者创新挑战参赛作品 | 调用真实营养数据(kcal)·零依赖纯前端·小程序 web-view 直接运行 | 会员互动·城市榜·试吃券奖池 | match-3 Demo · hackathon 2026

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages