跳到正文

正在自动登录…

← 返回项目列表

Tom123223/maimen-xinshi

情绪配餐菜单审核

这是一个基于麦当劳中国MCP的Skill和零依赖单文件演示页,将用户心事转化为麦当劳餐单,并由三个虚拟陌生人审核决定是否通过。适用于一个人点单犹豫不决、需要外部约束的人群。

AI 中文解读 · 根据仓库描述与 README 生成 · 2026/10/23 06:26:43 · 查看原文

普通HTML提示词与 Skills兼有 应用与服务
累计 Stars
53
当前热度
1 天内 · 小火
仓库创建时间
打开 GitHub ↗项目网站 ↗

选用指南

AI 根据 README 整理 · 2026/10/23 06:26:43

适用场景

适用于一个人点单犹豫不决、需要外部约束的场景,如加班后想犒劳自己但担心过量。

查看 README 依据
--- ## 这是什么 一个基于**麦当劳中国 MCP Server** 的 Skill:写下今天的心事,Skill 用 `query-meals`、`list-nutrition-foods`、`calculate-price` 等工具把它读成一份能解释得通的餐;点单之后,再交给三个陌生人审你的菜单——加点、扣点、不批,三人审完才定稿。 本仓库是这次参赛作品的完整交付,不只一个页面: | 组成 | 位置 | 说明 | |---|---|---| | Skill 定义 | `SKILL.md` | WorkBuddy / Claude Skill 格式的主指令 | | MCP 接入说明 | `MCP_INTEGRATION.md` | 实际用到的 Server、Tool、调用流程与业务价值 | | 演示前端 | `index.html` | 零依赖单文件页面,双击即跑;下面所有截图都出自它 | | 数据与校验 | `scripts/`、`data/` | MCP 调用封装、营养计算、菜单快照与实时比对 | | 本地代理 | `server/` | Node 单文件,把 MCP 结果转成页面可读的 JSON | **目标用户**:一个人点单、又在犹豫“这顿该不该吃”的人——加班到十点、不想被推荐沙拉的人;想点四样、需要有人拦一下的人。
目标用户

目标用户是独自点单、犹豫该不该吃的人,例如加班到十点、不想被推荐沙拉的人。

查看 README 依据
--- ## 这是什么 一个基于**麦当劳中国 MCP Server** 的 Skill:写下今天的心事,Skill 用 `query-meals`、`list-nutrition-foods`、`calculate-price` 等工具把它读成一份能解释得通的餐;点单之后,再交给三个陌生人审你的菜单——加点、扣点、不批,三人审完才定稿。 本仓库是这次参赛作品的完整交付,不只一个页面: | 组成 | 位置 | 说明 | |---|---|---| | Skill 定义 | `SKILL.md` | WorkBuddy / Claude Skill 格式的主指令 | | MCP 接入说明 | `MCP_INTEGRATION.md` | 实际用到的 Server、Tool、调用流程与业务价值 | | 演示前端 | `index.html` | 零依赖单文件页面,双击即跑;下面所有截图都出自它 | | 数据与校验 | `scripts/`、`data/` | MCP 调用封装、营养计算、菜单快照与实时比对 | | 本地代理 | `server/` | Node 单文件,把 MCP 结果转成页面可读的 JSON | **目标用户**:一个人点单、又在犹豫“这顿该不该吃”的人——加班到十点、不想被推荐沙拉的人;想点四样、需要有人拦一下的人。
使用方式

可直接双击index.html运行,或通过本地静态服务访问;也可作为Skill装载到WorkBuddy中使用。

查看 README 依据
# 方式一:直接打开 # 双击 index.html 即可完整运行(个别浏览器会限制 file:// 下的 localStorage, # 若陌生人模块无法保存记录,改用方式二) # 方式二:起一个本地静态服务(推荐) cd maimen-xinshi python -m http.server 8765 # 打开 http://localhost:8765 # 方式三:一键演示(自动填入示例心事并跑完五步) # http://localhost:8765/?demo=1 ``` 要求:任意现代浏览器(Chrome / Edge / Safari / Firefox 近两年版本)。 ## 安装 Skill(在 WorkBuddy 里用) 页面之外,本项目的主体是一个可装载的 Skill。三步: **1. 申请 MCP Token**:打开 <https://open.mcd.cn/mcp>,手机号登录 → 右上角【控制台】→【激活】,同意协议后复制 Token。 **2. 配置连接器**:WorkBuddy 侧边栏【专家·技能·连接器】→【连接器】→ 右上角【自定义连接器】→【配置 MCP】,填入: ```json { "mcpServers": { "mcd-mcp": { "type": "streamablehttp",
"url": "https://mcp.mcd.cn", "headers": { "Authorization": "Bearer ${MCD_MCP_TOKEN}" } } } } ``` 保存后回到【自定义连接器】把 `mcd-mcp` 设为【启用】。 **3. 装载 Skill**:把本仓库放进 `~/.workbuddy/skills/maimen-xinshi/`,重开会话即可;或直接说“用麦门心事帮我配一餐”。 > 不要把真实 Token 写进仓库(参赛声明第三章明确要求)。仓库内所有示例一律用 `${MCD_MCP_TOKEN}` 占位。 不带 Skill、纯命令行也能试: ```bash # 取一份门店菜单,确认餐品编码 python scripts/mcd_client.py --list-meals --store-code 1990102 # 生成热量报告 python scripts/nutrition.py --items "麦辣鸡腿堡,中薯条,可口可乐(中)" ``` ## 使用示例 **场景 A:加班一周,想给自己一顿。** 1. 心事框写“这周连着加班,今天终于把方案交出去了”,选「奖励自己」
部署要求

需要任意现代浏览器(Chrome/Edge/Safari/Firefox近两年版本);若使用Skill需申请麦当劳中国MCP Token并配置连接器。

查看 README 依据
# 方式一:直接打开 # 双击 index.html 即可完整运行(个别浏览器会限制 file:// 下的 localStorage, # 若陌生人模块无法保存记录,改用方式二) # 方式二:起一个本地静态服务(推荐) cd maimen-xinshi python -m http.server 8765 # 打开 http://localhost:8765 # 方式三:一键演示(自动填入示例心事并跑完五步) # http://localhost:8765/?demo=1 ``` 要求:任意现代浏览器(Chrome / Edge / Safari / Firefox 近两年版本)。 ## 安装 Skill(在 WorkBuddy 里用) 页面之外,本项目的主体是一个可装载的 Skill。三步: **1. 申请 MCP Token**:打开 <https://open.mcd.cn/mcp>,手机号登录 → 右上角【控制台】→【激活】,同意协议后复制 Token。 **2. 配置连接器**:WorkBuddy 侧边栏【专家·技能·连接器】→【连接器】→ 右上角【自定义连接器】→【配置 MCP】,填入: ```json { "mcpServers": { "mcd-mcp": { "type": "streamablehttp",
"url": "https://mcp.mcd.cn", "headers": { "Authorization": "Bearer ${MCD_MCP_TOKEN}" } } } } ``` 保存后回到【自定义连接器】把 `mcd-mcp` 设为【启用】。 **3. 装载 Skill**:把本仓库放进 `~/.workbuddy/skills/maimen-xinshi/`,重开会话即可;或直接说“用麦门心事帮我配一餐”。 > 不要把真实 Token 写进仓库(参赛声明第三章明确要求)。仓库内所有示例一律用 `${MCD_MCP_TOKEN}` 占位。 不带 Skill、纯命令行也能试: ```bash # 取一份门店菜单,确认餐品编码 python scripts/mcd_client.py --list-meals --store-code 1990102 # 生成热量报告 python scripts/nutrition.py --items "麦辣鸡腿堡,中薯条,可口可乐(中)" ``` ## 使用示例 **场景 A:加班一周,想给自己一顿。** 1. 心事框写“这周连着加班,今天终于把方案交出去了”,选「奖励自己」
已知限制

演示版中三个陌生人是本地模拟器,非真人;不能自填菜品,只能从22个固定品项中选择;不可直接商用,非麦当劳官方产品。

查看 README 依据
- `check_snapshot.py` 核对的 6 个工具均真实返回,111 项餐品全部在售,营养数据零变动; - 页面 22 项与实时挂牌价逐项一致; - 8 种情绪端到端全部通过; - 陌生人模块 67 项断言全部通过; - 1440 / 390 两种宽度下逐组件量过 `scrollWidth === clientWidth`,无横向溢出。 ## 常见问题 **Q:为什么不能自己输入想吃的菜?** A:这是刻意的限制。能自填就能写“一份炸鸡”,那审核就没有边界了。菜单来自门店真实挂牌数据,价格与热量才有依据。 **Q:三个陌生人是真人吗?** A:演示版是本地模拟器(`trBotVotes()` 按时间轴生成立场),真实产品必须由服务端把单子分发给三位真人,并做用户去重与防刷。要补的五项见「技术方案与架构 · 落地边界」。 **Q:票数够了为什么不立刻给结果?** A:给。现在的规则就是「三个人审完即定稿」,不用等满 24 小时,24 小时只是等人到齐的上限。早前的购物冷静期版本要求"票够也要等满 24 小时",两者都成立,区别在于约束的是时间还是人——审核菜单时,人比时间重要。 **Q:可以直接商用吗?** A:不可以。这是参赛作品,非麦当劳官方产品,商标与菜单数据归麦当劳中国所有。 **Q:手机上怎么演示?**
![双报告与麦友审批](docs/images/reports.png) ### 3. 心事卡片:会跟着指针转的 3D 卡片 结果面板最后一步是一张实体小票卡。它随指针倾斜,背后有厚度,贴纸挂在不同景深层;可以复制定稿文案、切纯文本版、生成分享链接。整张卡是 CSS 3D,不是图片。 ![3D 心事卡片](docs/images/card-3d.png) ### 4. 想吃点什么 · 先过三个陌生人 这是本项目的主打功能,也是“理性吃饭”落地的地方。 **五步读成一顿饭**:写下心事 → 只能点麦当劳的菜 → 交给三个陌生人 → 三个人各自加点 / 扣点 / 不批 → 菜单定稿。页面顶部有一条五步进度条,跟着你最新的那张单子走。 ![五步进度条](docs/images/trial-steps.png) **第一步写心事,第二步点菜,商品是硬限制的。** 页面里没有任何自填商品名的输入框,选品只能点菜单里的 22 个 chip(8 主食 / 7 配餐 / 7 饮品),价格和热量自动带出;一次 1–5 样,选满后其余置灰,留点余量让人扣。 ![写下心事与点菜](docs/images/trial-form.png)

README

正在加载 README…

收录信息

仓库创建时间
2026/10/22 08:39:26
首次达标收录
2026/10/23 06:21:11
统计更新时间
2026/10/23 06:51:10

按创建时长与累计 Stars 判断等级。首次达标收录后,即使未达当前门槛仍保留;累计 Stars 和仓库状态会定期更新。确认只有 README 及辅助文件的仓库会停止公开。

模型评估

普通加权总分 3.6 / 5

新颖度
4.0
实用价值
2.5
成熟度
4.4
实质含量
4.0

由 Jev 模型根据仓库描述与 README 评估,2026/10/23 06:21:11 生成。评分仅供参考,不是代码、安全或许可证审查;热度等级另按创建时长与累计 Stars 计算。

仓库信息

最近推送
2026/10/22 08:45:47
许可证标识
NOASSERTION
Fork 数
3
当前状态
未归档

收录记录

按创建时长与累计 Stars 首次收录:小火
首次发现项目