🍟 麦门年度总结 · McWrapped
基于麦当劳官方 MCP,把你的真实订单变成一份年度账单
中文 · English
🌐 在线演示 — 无需安装,点开即用
快速开始 · 使用示例 · 功能特性 · 工作原理 · 常见问题 · 更新日志
💡 为什么做这个
47 次巨无霸、¥1,286、连续 23 天的断食——这些数字你自己都记不清,但 AI 记得。
麦当劳官方 MCP 开放了真实的订单、积分、优惠券、活动数据。与其让这些数据躺在后台,不如把它变成一份有仪式感的年度账单:你今年吃了多少次、花了多少钱、最爱哪一口、断了几天,一目了然。
这个 Skill 做的事情很简单:把你的真实订单,翻译成一份值得截图发出去的年度报告。
不用你记,你只要问。
✨ 功能特性
🏅 麦门指数分档
年度总结会给你一个专属称号:
分数由四个互不重叠的维度加权得出:
积分维度用的是
query-my-account返回的累计积分,不是可用余额——余额会被兑换、抽奖、过期消耗,一个常年吃但刚换完券的人余额可能接近 0,用余额会把最虔诚的用户判成叛逃者。
📅 个人化星期偏好
「今日宜吃指数」的星期维度不是按通用规则给分,而是基于你自己的历史订单节奏算出来的:
调用 order-list 拉取你历史订单 → 统计每个星期几的下单次数 → 算出今天的「星期偏好分」:
星期偏好分 = 今日所在星期的历史占比 ÷ 历史最高占比 × 100
举例:你历史订单里周五 12 单、周六 15 单(最高)、周三只有 1 单——
- 今天是周五 → 12 ÷ 15 × 100 = 80 分(撞上你的吃麦节奏)
- 今天是周六 → 15 ÷ 15 × 100 = 100 分(你的主战场,满分)
- 今天是周三 → 1 ÷ 15 × 100 ≈ 7 分(不是你的吃麦日)
为什么这么设计:每个人吃麦当劳的节奏都不一样。有人天天周五金币套餐,有人周末才出门。比起「周六就是高分」的通用规则,让分数随你的真实节奏浮动,才能在「今天就是你平时吃的日子」时给出更有说服力的推荐。
数据不足时(历史订单 < 5 单)自动降级为通用偏好,避免样本太少导致误判。
🎨 在线演示
无需安装,点开即用。演示页面提供 3 个交互 Tab:
访问者无需任何环境配置,在浏览器里即可亲手跑通核心算法、理解 8 个 MCP 工具的协作方式,适合评委与潜在用户快速体验产品价值。
🚀 快速开始
第 1 步:申请 MCP Token
访问 麦当劳 MCP 开放平台:
手机号登录 → 控制台 → 激活 → 同意服务协议 → 复制 Token
第 2 步:配置 MCP
把 mcp-config.example.json 里的 ${MCD_MCP_TOKEN} 换成你的 Token,粘贴到你的 MCP 客户端(WorkBuddy / Cursor / Cherry Studio / Claude Code 等):
{
"mcpServers": {
"mcd-mcp": {
"type": "streamablehttp",
"url": "https://mcp.mcd.cn",
"headers": {
"Authorization": "Bearer ${MCD_MCP_TOKEN}"
}
}
}
}
也可以直接用环境变量注入,避免 Token 落盘:
export MCD_MCP_TOKEN=your_token_here
第 3 步:加载 Skill
把 SKILL.md 作为系统提示词 / Skill 文件加载到 AI 客户端,然后直接问:
- 「看看我的麦门年度总结」
- 「我今年吃了多少次麦当劳」
- 「今天宜吃麦当劳吗」
详细图文步骤见 workbuddy.md(WorkBuddy 专项)或 MCP_INTEGRATION.md。
💬 使用示例
输入:
看看我的麦门年度总结
输出:
🍟 2026 麦门年度总结
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📅 今年你一共吃了 47 次麦当劳
💰 累计消费 ¥1,286(平均每次 ¥27)
🏆 你的最爱:巨无霸(点了 12 次)
📈 吃得最多的月份:7 月(9 次)
📅 最常下单:周五
⏳ 最长断食:23 天
📊 距今天上次吃麦门:X 天
🎫 手上有 3 张券
⭐ 积分:可用 2,350 · 累计 3,860
🏅 麦门指数:83 分 · 麦门忠实信徒
构成:活跃度 70×30% + 消费 100×25% + 积分 100×25% + 券包 60×20% = 83
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
再输入:
今天宜吃麦当劳吗
输出:
🌤️ 今日麦门简报(10 月 25 日 周日)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
宜吃指数:90% 🔥 非常宜吃
今日宜吃:麦辣鸡腿堡套餐(黄金六块 + 麦乐鸡)
理由:
1. 你已经 9 天没吃麦门了 → 断食 80 分(权重 30%,贡献 24)
2. 今天是「程序员节专场」双件套活动 → 100 分(权重 25%,贡献 25)
3. 你那张「买一送一券」后天就过期 → 100 分(权重 25%,贡献 25)
4. 周日通用高分日,你的周日样本还不够 → 80 分(权重 20%,贡献 16)
= 24 + 25 + 25 + 16 = 90
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
要帮你下单吗?回复「点」
⚙️ 工作原理
年度总结 今日宜吃
│ │
├─ order-list 拉历史订单 ├─ order-list 断食天数
├─ query-my-account 查积分余额 ├─ campaign-calendar 今日活动
└─ query-my-coupons 查券包 └─ query-my-coupons 临期券
│ │
└─► 统计 + 麦门指数分档 └─► 加权计算 0-100 宜吃指数
│ │
└─► 输出报告 ──────────────────────────► 确认后 → query-meals
→ calculate-price
→ create-order
所有数字均来自麦当劳 MCP 真实返回,不编造、不虚构。工具调用失败时自动降级使用已有数据,不中断流程。
🎯 目标用户
- 🍟 麦门信徒 —— 想知道今年到底在麦当劳花了多少钱
- 📊 数据爱好者 —— 喜欢网易云/Apple Music 年度报告那种仪式感
- 💸 精打细算的人 —— 想知道自己的优惠券有没有浪费、断食是不是太久
- 🤖 AI Agent 开发者 —— 想学怎么把 MCP 能力包装成有人味的产品
📁 项目结构
mcd-yearly/
├── SKILL.md # Skill 本体(提示词 + 工作流定义)
├── README.md # 本文件
├── README_EN.md # 英文版 README
├── MCP_INTEGRATION.md # MCP 接入说明(工具清单 / 调用流程 / 业务价值)
├── CONTEST_DECLARATION.md # 参赛声明(官方原文,不可修改)
├── CHANGELOG.md # 更新日志
├── mcp-config.example.json # MCP 客户端配置模板(脱敏)
├── workbuddy.md # WorkBuddy 使用与开发上下文
├── demo/
│ └── index.html # 交互式在线演示页面
├── docs/
│ └── index.html # GitHub Pages 部署副本
├── images/
│ ├── banner.png # 项目主视觉
│ └── banner.svg # 主视觉矢量源文件
├── LICENSE # MIT 许可
└── .gitignore
🔐 安全说明
- Token 仅通过环境变量
${MCD_MCP_TOKEN}注入,仓库中不含任何真实 Token、密钥或个人身份信息 - 配置文件只保留环境变量占位符,符合参赛信息安全声明要求
- 所有业务数据实时来自麦当劳 MCP,仓库内不存储、不缓存用户订单
- 下单 / 领券等写操作前均要求用户明确确认
📄 许可证
MIT © 2026 麦门年度总结 contributors
⚠️ 免责声明
本项目为麦当劳 1024 程序员节创意开发大赛参赛作品,由参赛者独立开发,非麦当劳官方产品,与麦当劳公司无任何隶属或背书关系。
项目输出仅供娱乐参考,不构成医疗、营养或其他专业建议。餐品信息、价格及供应状态以麦当劳官方渠道的实时结果为准。所有商标归其各自所有者所有。
↑ 回到顶部