McButler (mcd-self-butler) — скилл

mcd-self-butler

McButler считает для заказа в McDonald's калории, полную цену с дорогой и очередью и подбирает набор под бюджет через MCP сети

  • 213 ★ репозитория
  • Последний коммит
  • MIT
Скилл

Расширенный доступ

Почему такой уровень

  • Через MCP агент читает аккаунт сети: купоны, баллы и историю заказов, а при явной просьбе может создать заказ
  • Токен MCP передается в заголовке, хранить его нужно вне репозитория и чата
Все причины и проверки

jouaaaaaa/mcd-self-butler

Установка

Работает в

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/mcd-self-butler

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Через MCP агент читает аккаунт сети: купоны, баллы и историю заказов, а при явной просьбе может создать заказ
  • Токен MCP передается в заголовке, хранить его нужно вне репозитория и чата

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

McButler — скилл для агента, который работает поверх официального MCP McDonald's China (`https://mcp.mcd.cn`, Streamable HTTP) и добавляет к нему расчеты на Python. Агент берет меню, цены и пищевую ценность через MCP, а встроенные скрипты строят рекомендации, оценки и таблицы. Скилл рассчитан на заказы в китайских ресторанах сети. У скилла шесть входов. Ежедневная рекомендация ранжирует блюда в режимах экономии, здоровья и популярности. Проверка набора разбирает комбо на позиции и суммирует калории, белок, жиры, натрий и кальций, а данные помечает как измеренные, официальные или оценочные. Сравнение ресторанов считает полную стоимость: цена плюс время в пути плюс очередь. Для корпоративного заказа делит людей на группы по ограничениям, а оценка «МакРиск» дает кредитный рейтинг заказов. Шестой вход рисует HTML-сценку, где персонажи спорят о выборе. Скилл не оформляет заказ сам: до слов пользователя «заказывай» агент останавливается на подтверждении цены. Если данных нет, скилл говорит о неопределенности и не подставляет выдуманное число.

Для кого. Пользователям McDonald's в Китае, которые подключили MCP сети к агенту и хотят считать заказ по калориям и полной цене, а не только по цене в меню.

Подходит, если

  • Обеденный перерыв короткий, и нужно выбрать ресторан с учетом дороги и очереди, а не только цены
  • Человек худеет, и ему нужен разбор комбо по калориям и натрию с вариантом замены
  • Отдел заказывает обед на 30 человек, у части ограничения по говядине и острому
  • Хочется проверить, насколько полно используются купоны и бонусы на счете
  • Нужно ответить на вопрос о цене: итог считает расчетный инструмент MCP, а не оценка на глаз

Не подходит, если

  • Вы за пределами Китая: MCP сети и меню относятся к ее китайскому сервису
  • У вас нет токена MCP McDonald's: без него живые меню и цены недоступны, остаются демо-данные из репозитория
  • Нужна медицинская рекомендация при болезни, беременности или аллергии: скилл сам отсылает к врачу и составу блюда
  • Заказывать следует в приложении без агента: скилл рассчитан на подбор, а оформление идет по явной просьбе

Пример запроса к агенту

Я в центре Шанхая, найди ближайшие рестораны и скажи, где комбо с «Биг Маком» выходит дешевле с учетом дороги и очереди

Ограничения

  • Скилл и документация на китайском языке. Токен MCP выдается в консоли McDonald's, без него работают только демо-данные из `demo/` и самопроверка `scripts/selftest.py`.
  • Интерфейс отдает пищевую ценность по отдельным позициям, а не по комбо. Скилл сам раскладывает набор и суммирует, поэтому цифры для позиций без данных помечаются как оценка или не выводятся.
  • Время очереди в MCP нет, его вводит пользователь или скилл берет в пиковые часы как приблизительное значение с пометкой.
  • Проект сделан для конкурса программистов McDonald's и не имеет отношения к официальной поддержке сети.

Как отключить. Удалите папку скилла `mcd-self-butler` из каталога скиллов агента и отключите коннектор `mcd-mcp` в его настройках. Токен MCP отзовите в консоли McDonald's. Локальных служб скилл не запускает.

Частые вопросы

Что нужно для работы McButler с живыми данными?

Токен MCP McDonald's, который выдают в консоли сети, и агент с поддержкой скиллов и MCP по HTTP. Без токена можно запустить демо на сохраненных ответах.

Можно ли запустить McButler без токена?

Да. Команды `python scripts/mcd_butler.py` читают файлы из `demo/`, нужен только Python 3.8 или новее без сторонних пакетов, а `python scripts/selftest.py` прогоняет девять проверок.

Как скилл считает калории комбо?

Через MCP он получает состав набора, сверяет каждую позицию с таблицей пищевой ценности и суммирует. Если позиции в таблице нет, оценка помечается как приблизительная или не выводится.

Оформляет ли скилл заказ сам?

Нет. Агент доходит до расчета цены и ждет явной команды вроде «заказывай», после чего вызывает создание заказа.

Что такое оценка «МакРиск»?

Кредитная карточка из шести измерений для аккаунта и для отдельных заказов, в которую входят, например, использование купонов и разнообразие позиций. Оценка носит развлекательный характер и подсказывает, где экономия упущена.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы

Скилл для агента: перебирает меню и купоны McDonald's Китая и подбирает заказ по самой низкой цене

СкиллШирокий доступ1,5 тыс.Звезды репозитория

Скилл по MCP McDonald's Китая отвечает на «что поесть» одним вариантом, помнит ваши заказы и ведет индекс цен на Биг Мак

СкиллШирокий доступ464Звезды репозитория

Скилл по MCP McDonald's Китая: из бюджета и пожеланий делает до трех меню с официальной ценой, остатком и условиями купонов

СкиллРасширенный доступ1,6 тыс.Звезды репозитория

Подбирает полный заказ McDonald's Китая под бюджет и вкус по официальным ценам и выдает готовую карточку для заказа

СкиллРасширенный доступ148Звезды репозитория

Скилл заказа в McDonald's China через официальный MCP: цены с купонами, состав, статус заказа и тихий итог без оценок еды.

СкиллШирокий доступ117Звезды репозитория

CLI и скилл для заказов McDonald's China: подбирают набор под калории, считают цену с купонами, держат заказ до подтверждения.

CLIШирокий доступ129Звезды репозитория

Коротко о README

README подается как работа для конкурса программистов McDonald's: сначала таблица жизненных ситуаций и шести режимов, затем формулы рекомендаций, правило подсчета полной стоимости и пример разбора комбо с честной пометкой качества данных. Дальше идут три способа запуска, в том числе локальный без токена, и реальные выводы, снятые 24 октября 2026 года.

Бейдж для README

Исходный SKILL.md

---
name: mcd-self-butler
description: 麦当劳自助管家(McButler)。基于麦当劳官方 MCP,做每日低价/健康/人气套餐推荐、套餐健康体检(热量·蛋白·脂肪·钠·钙)、最近门店与最低价门店的全成本比价、企业团餐批量配餐、以及「麦险分」信用评级,并在等待取餐时播放麦门小人吵架小剧场。当用户提到 麦当劳、麦门、金拱门、套餐、优惠券、热量、卡路里、减脂、团餐、下午茶、订餐、比价、麦险分 等词时使用。
---

# 麦当劳自助管家

你是「麦门管家」——一个既懂钱、又懂营养、还懂点行为经济学的麦当劳点单参谋。

你的价值不在于「帮用户点一个套餐」,而在于**把用户没说出口的三个约束同时解开**:
钱包(预算/券)、身体(热量/钠/蛋白)、时间(哪家店多久能拿到)。

---

## 铁律(每一轮对话都要守)

1. **先定场景再动手。** 到店自取 `beType=1` / 得来速 `beType=5` / 麦乐送 `beType=2` / 企业团餐 `beType=6`。
   场景不同,`orderType` 和 `beCode` 的传法完全不同,传错直接报错。
2. **价格只信 `calculate-price`。** 菜单页价格是标价,券、随单购、打包费、运费只有算价接口知道。
   绝不用口算代替,绝不把「菜单价」说成「到手价」。
3. **热量只信 `list-nutrition-foods`。** 营养表只有单品,没有套餐。
   所以分析套餐必须先 `query-meal-detail` 拆成子项,再逐项对表求和。
   **拿不到数据就说不确定,不许估一个数当结论。** 本地脚本会用「实测 / 官方 / 估算」三档标注数据来源,你必须原样转述。
4. **不自动下单。** 除非用户明确说「下单 / 就这个 / 帮我买」,否则只到「确认价格」这一步。
5. **不编造。** 门店编码、商品编码、券名、价格,一律来自工具返回;`storeCode` 必须全是数字。
6. **营养结论不是医疗建议。** 涉及疾病、孕期、儿童、过敏时,明确说明「仅供参考,请遵医嘱 / 以门店配料表为准」。

---

## 六件事,六个入口

### 1️⃣ 探店 / 比价 → `stores`

```
用户:我在南京西路,附近哪家麦当劳最划算?
```

1. `query-nearby-stores`(`searchType=2` + `city` + `keyword`,`beType=1` 到店自取或 `5` 得来速)
2. 选 3-5 家候选,逐个 `query-meals` 拿目标套餐价格(或直接 `calculate-price`,更省 token)
3. 把门店 + 距离 + 价格写进 `stores.json`,跑:

```bash
python scripts/mcd_butler.py stores --stores stores.json --mode balanced
```

Сообщить о проблеме

Foxx AIMcButler (mcd-self-butler)
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.