内容
# 麦门点单诸葛亮
> 四个人吃饭,240 块怎么点最划算?这个 Skill 帮你算清楚每一笔账。
[](LICENSE)
## 这是什么
一个基于麦当劳官方 MCP 的聚餐点单助手。你告诉它人数、预算、有没有忌口,它会:
- 找到能送到的门店,或者帮你找附近的店
- 查你手上有哪些券、这张单能用哪几张
- 拉出该门店真实在售的菜单和价格
- 算出总价能减多少,帮你判断**要不要为了凑单多买点**
- 遇到不吃辣、小朋友、想吃清淡的,帮你换品项并重新算账
**它只帮你算,不替你下单。** 确认方案后你自己在麦乐送或到店小程序完成支付。
## 为什么不是"随便点点就行"
一个人吃饭是"选一个",一群人吃饭是"算一堆约束下的最优解":
- 券要几张才够门槛?满减算不算套餐?
- 加 7 块钱的薯条能多省 12 块,这笔划不划算?
- 有个人不吃辣,换成什么差价多少?
这些都得算,不算就是拍脑袋。本Skill 把每次点单前的犹豫变成一道有答案的算术题。
## 功能
| 能力 | 说明 |
|---|---|
| 多场景门店定位 | 支持到店自取、得来速车道取餐、麦乐送到家、企业团餐四条链路 |
| 优惠券核算 | 查门店实际可用券和可领取券,验算门槛是否达标 |
| 满减凑单建议 | 按"净收益 = 减免 − 加购"判断是否值得凑单,给出明确结论 |
| 人群适配 | 忌口、儿童餐、素食的替换建议,替换后重新验算总价 |
| 营养数据参考 | 提供热量、蛋白质、脂肪、碳水、钠、钙数据供自行判断 |
| 活动日历 | 查询当月营销活动,避免错过可用优惠 |
**明确不做的事**:不下单、不支付、不评价麦当劳、不与其他品牌比较、不输出"不健康饮食"类评价。
## 安装
### 前置条件
- 中国大陆地区手机号(用于申请 MCP Token)
- 已安装 [WorkBuddy](https://www.workbuddy.cn/)
- 已获取麦当劳 MCP Token
### 第一步:申请 MCP Token
1. 打开 https://open.mcd.cn/mcp
2. 点击右上角【登录】,用手机号完成验证
3. 登录后右上角变为【控制台】,点击进入
4. 点击【激活】申请 MCP Token
5. 阅读并同意服务协议
6. 复制生成的 Token
### 第二步:配置连接器
在 WorkBuddy 中打开左侧边栏【专家·技能·连接器】→【连接器】页签 → 右上角【自定义连接器】→【配置MCP】,填入:
```json
{
"mcpServers": {
"mcd-mcp": {
"type": "streamablehttp",
"url": "https://mcp.mcd.cn",
"headers": {
"Authorization": "Bearer YOUR_MCP_TOKEN"
}
}
}
}
```
把 `YOUR_MCP_TOKEN` 替换为实际 Token,点击【保存】。
完整示例见 `mcp-config.example.json`。
### 第三步:启用并信任
1. 回到【自定义连接器】,将 `mcd-mcp` 设为【启用】
2. 在连接器管理页右上角的自定义连接器入口点击【信任】
> 写入配置后不会自动激活,必须完成信任这一步。
### 第四步:安装 Skill
将本仓库的 `mcd-party-planner` 目录放入 `~/.workbuddy/skills/`,或在 WorkBuddy 中导入。
### 验证
在对话框中请求调用 `now-time-info`,能返回当前服务器时间即配置成功。
也可以运行环境检查:
```bash
cd mcd-party-planner
python scripts/check_environment.py
```
返回 `ready` 表示核心功能可用。
## 使用示例
### 例一:四人聚餐,预算 240
```
你:四个人,预算 240,其中有个人不吃辣
麦门点单诸葛亮:
【点单方案】4 位 · 预算 240 元 · 到店自取
门店:麦当劳郑州航空港区绿悠悦享天地餐厅
搭配(价格来自该门店 query-meals 真实返回):
- 板烧鸡腿堡三件套× 2 38.5 元
- 汉堡开心乐园餐 × 1 25.0 元
- BFF四宫格小食盘 × 1 39.8 元
- 可乐 × 4 10.0 元
原价合计:181.80 元
到手价:181.80 元(该门店当前无可用券)
人均约45.45 元
凑单建议:当前方案已达181.80 元。该门店当前未返回可用优惠券,
无法核算满减门槛。如需触发订单级优惠,建议凑单至 220 元以上——
可加 1 份麦辣鸡翅4块套餐(42 元)或 2 份麦香鸡套餐(64 元)。
忌口说明:未选含辣品项。若需进一步规避辣味,可将板烧鸡腿堡
三件套替换为吉士汉堡包套餐(31.00 元),差价已在总价中体现。
下一步:确认方案后可自行到店或在小程序完成下单。
```
> 上述单价为真实抓取数据,价格随门店和时间变化,实际以门店为准。
### 例二:查券
```
你:我今天有什么券能用?
麦门点单诸葛亮:
已为你查询该门店当前可用优惠券。你手上共有 3 张券,
其中 2 张未达到使用门槛。
(详细券信息表格)
```
### 例三:领券
```
你:帮我领券
麦门点单诸葛亮:
已为你领取 2 张优惠券:满50 减 8、满 100 减 20。
下次点单时我会优先为你匹配这两张。
```
## 目标用户
| 用户 | 典型场景 |
|---|---|
| 办公室聚餐负责人 | 被同事问"今天吃啥吃多少钱",需要一份能拍板的账单 |
| 家庭聚餐决策者 | 有老人小孩,忌口和营养要一起考虑 |
| 麦当劳常客 | 手里有券不知道哪张能用、怎么凑满减 |
| 技术爱好者 | 想看看 MCP 能力如何组合成完整决策链路 |
## 项目结构
```text
mcd-party-planner/
├── SKILL.md# Skill 主文件:触发条件、执行流程、输出模板
├── skill-dependencies.json 依赖与降级映射
├── scripts/
│ └── check_environment.py 只读环境检查器
└── references/
├── mcp-call-flow.md 四条链路参数表与调用顺序
├── optimization-rules.md 满减与凑单计算规则
└── setup-guide.md Token 申请与配置指南
```
## 安全说明
- MCP Token 只保存在 `~/.workbuddy/mcp.json`,不写入本仓库任何文件
- `mcp-config.example.json` 只使用环境变量占位符,不含任何真实凭据
- 本Skill 只调用查询类工具,不调用下单、支付、抽奖类工具
- 领取优惠券需用户明确要求后才执行
## 遵循的规范
使用本项目即表示同意[麦当劳 MCP 服务规则](https://cdn.mcd.cn/cms/pages/MCPServerRules.html)。
## License
MIT