mcctl CLI

CLI and skill for McDonald's China orders: pick a meal by calories, price it with coupons and hold the order until confirmed.

  • 129 ★ on the repository
  • Last commit
CLI

Broad access

Why this level

  • The `order` commands place real McDonald's China orders when a token is set and `--confirm` is passed, which an agent can do itself.
  • The `MCD_MCP_TOKEN` token opens an account with coupons, points and orders; a leak exposes them to others.
All reasons and checks

hulinkang9527/mcctl

Install

Manual install

pip install git+https://github.com/hulinkang9527/mcctl.git && mcctl whoami

The first README command installs the package from GitHub and starts the 8-question quiz.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The `order` commands place real McDonald's China orders when a token is set and `--confirm` is passed, which an agent can do itself.
  • The `MCD_MCP_TOKEN` token opens an account with coupons, points and orders; a leak exposes them to others.

This is third-party code. Review the repository files before installing.

What it does

mcctl is a Python command line that orchestrates the 35 tools of the official McDonald's China MCP: menus with calories, meal selection by budget and diet, coupons, orders, points and party slot booking. The same commands are described in the `skill/SKILL.md` skill for WorkBuddy and Cursor, and the `--json` flag returns structured output for an agent. By default it runs an offline demo on bundled data with no token. `mcctl --live` switches to real menus and prices using a token issued at `open.mcd.cn/mcp`. Orders and cancellations are dry runs until the `--confirm` flag is passed; in live mode payment happens on the official service page.

Who it is for. Developers holding an official McDonald's China MCP token who order food from a terminal or through an agent.

Good fit when

  • An agent builds a lunch within calorie and protein limits from the McDonald's China menu.
  • Before ordering, you compare the final price across coupons and look for the lowest total.
  • An organiser picks a date and slot for a party by guest count and budget.
  • A developer studies how to build a CLI and skill on top of someone else's MCP server.

Not a fit when

  • You order outside China: the tool works only with McDonald's China.
  • There is no token from `open.mcd.cn/mcp`: only the offline demo with sample prices is available.
  • An agent is trusted with unattended orders: it can pass `--confirm` itself, so keep tool-call approval on in the client.

Example request

Pick a lunch up to 700 kcal with at least 35 g of protein, price it with coupons and show the order without confirming it.

Limitations

The project is unofficial, built for a McDonald's China developer contest and unaffiliated with the company. The package is not on PyPI yet (the planned name is `mcd-mcctl`), so it installs from the repository. The personality-test web page runs offline and does not call MCP. The token lives in `MCD_MCP_TOKEN` and must not be committed; users follow the McDonald's China MCP terms themselves. Python 3.10 or newer is required.

How to disable. Uninstall the package with pip, remove the skill from the agent's skills folder and the `mcd-mcp` entry from the MCP configuration. Revoke the token in the `open.mcd.cn/mcp` console.

FAQ

Do I need a token for mcctl?

Not for the offline demo, which runs on bundled sample data. `mcctl --live` uses real menus and prices with a token in `MCD_MCP_TOKEN`, issued at `open.mcd.cn/mcp`.

Does mcctl charge money itself?

No. An order without `--confirm` stays a dry run, and in live mode payment happens on the official service page.

How do I connect the McDonald's China MCP to Cursor directly?

Use `mcp-config.example.json` from the repository: Streamable HTTP, address `https://mcp.mcd.cn`, an Authorization header with the token.

Is the package on PyPI?

Not yet. The planned name is `mcd-mcctl`; install with `pip install git+https://github.com/hulinkang9527/mcctl.git`.

Which commands does mcctl have?

`whoami` and `personas` for the quiz, `decide`, `diet` and `lunch` for meal selection, `coupons` and `save` for pricing, `order`, `points`, `party plan`, `tools` and `demo`.

Discussion

No questions or reviews yet.

CLI tools

McButler works out calories and the full cost of an order, including travel and queue time, from the McDonald's China MCP

SkillExtended access215Repository stars

A skill for ordering from McDonald's China via its official MCP: coupon-aware prices, nutrition, order status and a quiet summary.

SkillBroad access117Repository stars

An agent skill that goes through McDonald's China menus and coupons and picks the lowest-priced order

SkillBroad access1.5KRepository stars

Picks a complete McDonald's China order for your budget and taste at official prices and returns a ready order card

SkillExtended access148Repository stars

A skill on the McDonald's China MCP: turns a budget and wishes into up to three menus with official prices, leftover budget and coupon terms

SkillExtended access1.6KRepository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialRepository starsMain difference
mcctl (this card)no129
McPair McDonald's meal pairingno125enumerates menu combinations and returns three orders; mcctl covers all 35 MCP tools from menu to order and points
mcd-coupon-strategistno992compares coupons and prices an order; mcctl adds ordering, points and party slot booking

README in short

The repository holds the Python package, the skill, an offline page with an 8-question quiz and command documentation. The personality type from the quiz weights meal selection. The project was made for a contest and is not affiliated with the company.

README badge

Report a problem

Foxx AImcctl
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.