MCD Saver Strategist — скилл
Скилл для агента: перебирает меню и купоны McDonald's Китая и подбирает заказ по самой низкой цене
- 1 546 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Токен McDonald's открывает аккаунт: агент вызовом `auto-bind-coupons` забирает все доступные купоны
- Заказ создается с вашего аккаунта и ведет к оплате по ссылке
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/mcd-saver-strategistОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Токен McDonald's открывает аккаунт: агент вызовом `auto-bind-coupons` забирает все доступные купоны
- Заказ создается с вашего аккаунта и ведет к оплате по ссылке
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Скилл помогает заказать еду в McDonald's Китая дешевле. Агент берет через MCP-сервер McDonald's меню выбранного ресторана, калорийность блюд и четыре списка купонов, а затем передает данные скрипту `optimizer.py`. Скрипт на Python без внешних зависимостей перебирает сочетания блюд и купонов и выдает несколько заказов с наименьшей ценой. Агент сам не считает деньги: суммы приходят только из скрипта и из вызова `calculate-price` на стороне McDonald's. В примере из репозитория Биг Мак с картошкой и колой по отдельности стоит 47 юаней. Купон «1+1 随心配» закрывает Биг Мак и картошку за 12,9 юаня, кола стоит 9 юаней, и заказ выходит на 21,9 юаня. Скрипт подбирает заказ и под другую цель: сбалансированный, самый легкий по калориям или с меньшим числом позиций. Еще он проверяет каждый купон и подсказывает добавку до следующей скидки по сумме. Для сравнения скрипт строит границу «цена против калорий» и считает заказ на компанию с ценой на человека. Заказ агент оформляет вызовом `create-order` только после вашего подтверждения и отдает ссылку на оплату.
Для кого. Для тех, кто часто заказывает в McDonald's Китая с купонами и хочет доверить агенту подбор самой выгодной комбинации.
Подходит, если
- Нужен самый дешевый способ собрать любимый заказ, например Биг Мак с картошкой и колой
- Есть бюджет, скажем 30 юаней, и нужно узнать, что на него можно взять
- Нужно уложиться в калорийность, например в 800 ккал, и заплатить как можно меньше
- В аккаунте много купонов, и непонятно, какие из них стоит использовать
- Заказ на компанию: нужны общая сумма и цена на человека
Не подходит, если
- Вы заказываете в другой сети или в другой стране: меню, купоны и магазины берутся только из MCP-сервера McDonald's Китая
- Нужна автоматическая оплата: скилл создает заказ после вашего подтверждения и отдает ссылку на оплату
- Вы пользуетесь другим агентом: скилл разработан и проверен в WorkBuddy
Пример запроса к агенту
Хочу Биг Мак с картошкой и колой. Как заказать подешевле? У меня есть несколько купонов.Ограничения
Проект неофициальный, его сделали для конкурса программистов McDonald's. Работает он только с MCP-сервером McDonald's Китая: токен выдает платформа open.mcd.cn после входа по телефону. Инструкции по установке есть только для WorkBuddy.
Меню, цены и купоны в офлайн-примерах — демонстрационные снимки, реальные значения приходят от сервера. Офлайн-примеры и онлайн-калькулятор заказ не оформляют, это делает только агент через MCP-сервер. Число запросов к серверу ограничено 600 в минуту.
Купоны без права суммирования скрипт считает несовместимыми с любыми другими и не складывает их в одном заказе, даже если сервис допустил бы такое сочетание.
Как отключить. Удалите папку `~/.workbuddy/skills/mcd-saver-strategist` и отключите MCP-сервер McDonald's в настройках коннекторов WorkBuddy. Токен из переменной окружения после этого можно удалить.
Частые вопросы
Можно ли попробовать без токена?
Да. В папке scripts лежат примерные меню и купоны: команда `python optimizer.py` покажет лучший заказ, а `python demo.py` прогонит семь сценариев. Живые цены без токена получить нельзя.
Почему агент не считает цену сам?
Модели путают арифметику, а у McDonald's много купонов с разными правилами суммирования. Поэтому инструкция скилла запрещает считать вручную: итог берется из `optimizer.py` и проверяется вызовом `calculate-price`.
Что показывает проверка купонов?
Для каждого купона скрипт сравнивает номинал, реальную экономию и упущенную выгоду. В примере из репозитория купон «минус 7 при заказе от 35» экономит 7 юаней, но закрывает путь к «1+1 随心配», и заказ выходит на 18 юаней дороже.
Учитывает ли скрипт доставку?
Да. В сценарии доставки стоимость доставки входит в итог, а купоны, которые действуют только в ресторане, скрипт отсеивает по полю `channel`.
Как быстро работает перебор?
Скрипт отсекает лишние варианты в три слоя: меню из 160 блюд с 12 купонами он разбирает примерно за 260 мс. Замер лежит в файле `bench.py`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыCLI и MCP-сервер, которые считают расход токенов по 41 инструменту и агенту, показывают трату по проекту и модели и помогают срезать лишние токены
MCP-сервер рецептов: агент ищет блюда по категориям, составляет меню на неделю с учетом аллергий и подсказывает ужин на сегодня
Библиотека из 229 скиллов для работы и жизни: продажи, маркетинг, финансы, разработка, дизайн и запуск параллельных агентов
Набор скиллов для поиска работы: разбор вакансии, резюме по шаблонам, подготовка к поведенческому интервью, сравнение офферов и переговоры
MCP-сервер обмера строительных чертежей: агент открывает PDF, ставит масштаб, считает площади и отдает размеченный набор листов
Неофициальный Python-клиент и скилл для личного кабинета СберМобайл: тариф, остатки пакетов, услуги и бонусы
Коротко о README
Рядом со скиллом лежит онлайн-калькулятор на GitHub Pages: он повторяет алгоритм скрипта в браузере и работает без входа. Таблица «что настоящее, что пример» отделяет реальную связь с MCP и алгоритм от демонстрационных цен. Разработчик записал находки живого теста: купоны нужно собирать из четырех источников, часть из них действует только в ресторане, а у нового аккаунта список заказов пуст.
Бейдж для README
Исходный SKILL.md
--- name: mcd-saver-strategist description: 麦门省钱精算师。当用户在麦当劳(麦当劳/麦麦/金拱门/麦乐送/到店取餐)点餐,并希望"最省钱、凑满减、把优惠券用到极致、性价比最高、在预算内吃好"时使用;也适用于"帮我看看这些券怎么用最划算""我想吃XX但想便宜点""30块钱能吃到什么"这类诉求。它通过麦当劳 MCP 拉取门店菜单、可用优惠券、营养信息,再用确定性组合优化算法穷举出总价最低的合规点餐方案,并在用户确认后下单。 agent_created: true --- # 麦门省钱精算师 ## 这个 Skill 解决什么问题 麦当劳的优惠体系是「菜单 × 优惠券 × 叠加规则」的组合爆炸问题:同一顿饭, 直选可能花 47 元,「1+1 随心配」+ 单点一杯饮料只要 21.9 元。人类用户懒得算, 大模型**算不准**(组合数多、券规则细、口算容易错)。 本 Skill 的分工非常明确: - **MCP 负责「取数」**:菜单、价格、优惠券、营养、门店。 - **`scripts/optimizer.py` 负责「算」**:在组合空间里穷举,给出确定性最优解, 并回答四个衍生问题——多目标选型、券体检、凑单建议、帕累托前沿。 - **你(Agent)负责「说」和「做」**:把结果讲成人话、给出推荐、经用户确认后下单。 > 核心纪律:**永远不要自己口算价格或用券组合**。所有金额必须来自 > `optimizer.py` 的输出或 MCP 的 `calculate-price` 返回值。 ## 何时使用 触发场景举例: - "我想吃巨无霸套餐,怎么点最便宜?" - "我有这些券,帮我看看怎么用最划算" - "30 块钱在麦当劳能吃到什么?" - "减肥中,想吃麦当劳但热量控制在 800 大卡以内,还要便宜" - "帮我在麦乐送点一份午餐,别超过 40" ## 工作流 ### 第 0 步:确认前提(缺一不可) 开始前必须明确这几件事,缺哪个就向用户问哪个: 1. **就餐方式**:外送到家 / 到店取餐 / 堂食外带(决定用 `delivery-*` 还是 `query-nearby-stores`)。 2. **位置或门店**:外送需要配送地址,到店需要哪个门店。 3. **想吃的东西 / 约束**:想吃什么(可模糊)、预算上限、热量上限、几人吃。 4. **点餐目标**(可选):默认「最省钱」;用户在意"吃全一点""低卡""少点几件"时, 分别用 `objective: balanced / lightest / fewest`。不用反复追问,按语气判断即可。