McMate — скилл

Скилл заказа в McDonald's Китая: выбирает ресторан, спрашивает людей и бюджет, дает три набора с проверкой цены

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

Широкий доступ

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

  • Оформляет настоящие заказы в McDonald's через MCP по вашему токену.
Все причины и проверки

xx20050823xx/mcmate

Установка

Работает в

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

npx skillfoxx add skills/mcmate

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

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

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

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

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Оформляет настоящие заказы в McDonald's через MCP по вашему токену.

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

Что делает

McMate ведет выбор по четырем шагам. Сначала ресторан: скилл показывает ближайшие точки с адресом и расстоянием. Затем число людей, потом бюджет, одной фразой или потолком. В конце три набора разной структуры, каждый проверен официальным `calculate-price`. При желании заказ оформляется на самовывоз, в авто-окне, с доставкой или как групповой. В проект входит отдельный движок подбора на Python (`main.py --menu menu.json --budget 30-40 --people 1`). Он учитывает особенности реального меню: у избранных точек расстояние равно нулю без координат, позиции за 28 юаней нужны вместе с картой, «随心配 1+1» собирается из выбора, игрушки и сувениры в меню исключаются, а цены в юанях и фэнях приводятся к одной единице. Платеж пользователь проводит в приложении McDonald's сам, скилл платежных данных не видит.

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

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

  • Обед на троих с потолком 100 юаней нужно собрать быстро.
  • Требуются наборы с основным блюдом, закуской и напитком, не выходящие за бюджет.
  • Цены хотят сверить официальным расчетом перед заказом.
  • Заказ нужно оформить для самовывоза или доставки прямо из диалога.

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

  • Вы не в Китае: сервис привязан к MCP McDonald's Китая.
  • Требуются расчеты калорий и белка, их скилл не выводит.
  • Оформлять заказы агентом вы не хотите.

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

Нас двое, на двоих 80 юаней. Подбери три разных набора в ближайшем McDonald's и покажи цену после проверки.

Ограничения

Нужен токен MCP McDonald's Китая с open.mcd.cn, он прописывается в `~/.workbuddy/mcp.json` с заголовком `Authorization: Bearer`. Без префикса `Bearer ` сервер вернет 401. Скилл рассчитан на WorkBuddy, описание на китайском. Оформление заказа создает настоящий заказ в системе McDonald's, а платеж подтверждается в приложении или мини-программе; перед созданием заказа проверяйте состав и цену. Лицензия в репозитории не указана. Позиции, доступные только студентам или в завтрак, помечаются и получают пониженный вес.

Как отключить. Удалите папку `~/.workbuddy/skills/mcmate` и запись `mcd-mcp` из `~/.workbuddy/mcp.json`. Токен при необходимости отзовите на open.mcd.cn.

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

Как установить McMate?

Скопируйте каталог в `~/.workbuddy/skills/mcmate/` командой `cp -r mcmate ~/.workbuddy/skills/` и настройте MCP с токеном McDonald's.

Как настроить MCP?

В `~/.workbuddy/mcp.json` задайте сервер `mcd-mcp` с `type` streamablehttp, `url` `https://mcp.mcd.cn` и `Authorization: Bearer <токен>`.

Платит ли скилл сам?

Нет. Скилл создает заказ, а оплату пользователь подтверждает в приложении или мини-программе McDonald's.

Можно ли запустить подбор без MCP?

Да, движок на Python принимает файл меню: `python main.py --menu menu.json --budget 30-40 --people 1`.

Что с акциями только для студентов?

Такие позиции и завтраки помечаются и учитываются с пониженным весом для обычного пользователя.

Обсуждение

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

Скиллы

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

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

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

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

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

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

Скилл и CLI называют самый дешевый способ заказать еду в McDonald's Китая и показывают итог до создания заказа

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

Скилл подбирает заказ в McDonald's Китая под бюджет и лимит натрия: сверяет купоны точки и не оформляет заказ.

СкиллМинимальный доступ582Звезды репозитория

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

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

Коротко о README

Проект объединяет скилл с четырехшаговым диалогом и автономный движок подбора. В README перечислены ловушки реального меню и способы их обхода в расчетах.

Бейдж для README

Исходный SKILL.md

---
name: mcmate
description: McMate(麦当劳"选择困难症终结者")。当用户说要吃麦当劳但没想好吃什么、或给出预算(如"30-40元""预算35""两个人吃XX元")时,先定位并让用户选择附近门店,再依次确认就餐人数与预算区间,最后通过麦当劳官方 MCP(mcd-mcp)读取该门店实时菜单,给出 2-3 个可直接下单的搭配。触发词:麦当劳预算、麦当劳搭配、选择困难、帮我点麦当劳、mcd 吃什么。
agent_created: true
---

# McMate · 麦当劳选择困难症终结者

> McMate = McDonald's + 搭子。你的麦记饭搭子。

## 用途

把"我想吃麦当劳,但不知道点什么"变成一次四步对话:**选门店 → 报人数 → 报预算 → 拿方案**。

方案的每一分钱都来自麦当劳官方接口:菜单用 `query-meals` 实时拉取,价格用 `calculate-price` 复核,用户满意即可直接下单。

## 前提

- 当前会话已连接麦当劳官方 MCP(`mcd-mcp`,`https://mcp.mcd.cn`),工具名前缀 `mcp__mcd-mcp__`。
- 若未连接,提示用户在连接器管理页(左下角「+」菜单 → 右上角自定义连接器)信任 `mcd-mcp`,**不要伪造菜单或价格**。
- 工具返回 `success:false` 时,把 `message` 原样告知并停止。

## 交互原则(重要)

1. **一问一答**:一次只问一个问题,等用户回答后再进入下一步。不要一口气抛出"哪家店、几个人、多少钱"三连问。
2. **按固定顺序**:门店 → 人数 → 预算 → 推荐。顺序来自用户真实决策链:先定"去哪吃",再定"几个人",最后才考虑"花多少钱"。
3. **不重复问**:用户如果一开始就说"两个人 40 块,玉溪极中心那家",直接跳到 Step 4,把已给的信息回读确认一次即可。
4. **每步都有默认值**:用户说"随便/都行/你定",用默认值继续(最近门店 / 1 人 / 30-40 元),并明确告知用了什么默认值。
5. **预算必须问**:用户没提预算时不能自己编一个;可以给参考锚点帮他想。

## 标准流程

### Step 1 定位门店,让用户选

**到店自取(默认)**

```
query-nearby-stores(searchType=1, beType=1)      # 1=收藏门店,通常就是"附近常去"的那几家
```

- 收藏为空、或返回 `distance=0`(收藏门店不带坐标)时,改用位置搜索:
  ```
  query-nearby-stores(searchType=2, beType=1, city="<城市>", keyword="<商圈/地标>")
  ```
  不知道城市/商圈就问一句:"你在哪个城市、附近什么地标?"
- 按 `distance` 升序(单位**米**,1355 → 约 1.4km),最多展示 5 家。

**展示格式**(编号让用户回数字,不要让他打店名):

```

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