Use the official McDonald's China MCP toolchain, not scraped web APIs.
Core workflow
- Identify the delivery address.
- Call
delivery-query-addressesfirst. - Pick the matching address record and carry forward
addressId,storeCode, andbeCodefrom the same record. - Call
query-mealsfor that store. - If needed, call
query-meal-detailfor a chosen meal code. - Call
calculate-pricebefore ordering. - Show the user the real payable amount and wait for confirmation.
- Call
create-orderonly after confirmation. - Return the
payH5Urlto the user. - After the user says payment is complete, call
query-order.
Important constraints
- Use server URL
https://mcp.mcd.cn. - Send
Authorization: Bearer <TOKEN>. - MCP protocol version must be
2025-06-18or earlier. - Prefer low request volume; the docs say 600 requests/minute/token.
- Do not invent
storeCode,beCode, oraddressId. - For delivery ordering, always use values returned by
delivery-query-addressesordelivery-create-address. - Always price-check with
calculate-pricebeforecreate-order. query-meal-detaildocs note that replacing default combo choices is not yet supported in current version.
Tool map
Delivery ordering
delivery-query-addresses: list saved deliverable addressesdelivery-create-address: add a new delivery addressquery-store-coupons: coupons usable for the chosen storequery-meals: menu for the chosen storequery-meal-detail: inspect a meal / combocalculate-price: final price checkcreate-order: create payable delivery orderquery-order: query order status after creation/payment
Other useful tools
available-coupons: claimable couponsauto-bind-coupons: one-click claim current couponsquery-my-coupons: coupon walletlist-nutrition-foods: nutrition listquery-my-account: points accountmall-points-products,mall-product-detail,mall-create-order: points mallcampaign-calendar: marketing calendarnow-time-info: server time
Recommended user-facing flow
When the user says “帮我点麦当劳” or similar:
- Confirm budget / preferred item if missing.
- Resolve the delivery address from saved addresses first.
- Find candidate items from
query-meals. - Use
calculate-pricefor one or a few concrete combinations. - Present the cheapest / best-fit options with real payable totals.
- Only place the order after explicit confirmation.
- After order creation, send the payment link.
- After payment, query
query-orderinstead of assuming success.
Files in this skill
- Read
references/api.mdfor the compact API cheat sheet and tested field names. - Use
scripts/mcd_rpc.pyfor direct RPC calls to the remote MCP server when you need deterministic testing or CLI usage. client.pycontains a Python wrapper around the same remote MCP calls.nlp_processor.pycontains lightweight text parsing for order intent.tools.pycontains higher-level helper functions.
Packaging notes
Keep the skill folder lean.
Do not add extra docs beyond what is needed for reuse.
Remove transient files like __pycache__ before packaging.