McPet

MCP server of a desktop pet: session status, token usage, McDonald's and Luckin Coffee coupons and orders with confirmation

  • 313 ★ on the repository
  • Last commit
MCP server

Broad access

Why this level

  • The server places real orders, claims coupons and cancels orders in food service accounts.
  • Personal McDonald's and Luckin tokens are stored in `.env` on the machine.
All reasons and checks

songconmaisaix31-design/mcpet

Install

Manual install

python -m pip install -r requirements-agent.txt

The command for the agent package from the Agent section of the README; then `python -m src.agent_install` prints the server settings.

Access and checks

How we review

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

  • The server places real orders, claims coupons and cancels orders in food service accounts.
  • Personal McDonald's and Luckin tokens are stored in `.env` on the machine.

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

What it does

McPet is a desktop pet that ships an MCP server for agents (stdio). Through the `mcpet_*` tools an agent shows session progress and local token usage, the DeepSeek balance, and switches the pet character and its outfits. The server also finds McDonald's coupons and prices, picks coffee at Luckin, calculates nutrition and keeps a food diary. Claiming a coupon, ordering and cancelling are first shown in a summary and run only after explicit confirmation. Default limits are 100 yuan per order and three orders a day. The user pays for the order in the brand app. The repository includes a skill, `.agents/skills/mcpet/SKILL.md`, describing the call order.

Who it is for. Claude Code and other MCP client users who order food and coffee right from a session and track token usage.

Good fit when

  • Between tasks you want to know whether a McDonald's lunch coupon exists without opening the app.
  • A Luckin coffee is chosen with its recipe price and the order is placed after confirmation.
  • You want to watch token usage and the remaining DeepSeek balance.
  • Meals go into a diary: the agent finds the dish and records the portions eaten.

Not a fit when

  • Connecting to other people's accounts is not an option: the shared trial credentials suit testing only.
  • Orders are not trusted to an agent even with confirmation, since they create real items in the account.
  • The pet needs stable macOS or Linux, where tray and desktop compatibility is not fully verified.

Example request

Which McDonald's coupons are there today? Only show them first and order nothing.

MCP

Transport
stdio
Authentication
API key

Limitations

The current release is v0.1.0 in Python and Qt: real orders, payment and a full host session still await manual acceptance. Trial mode uses a shared public account; for steady use set your own McDonald's and Luckin tokens. Usage data comes only from readable logs and unknown values stay unknown. Documentation is mostly in Chinese. The pet and the MCP server share one data folder, so run them under the same user.

How to disable. Remove the `mcpet` server from the agent MCP settings and reload the session. Quit the pet from the tray and delete the data folder and personal tokens in `.env` separately.

FAQ

How do I connect McPet to an agent?

Download the agent package from the release or clone the repository, run `python -m pip install -r requirements-agent.txt`, then `python -m src.agent_install`. Put the printed `server.command` and `server.args` into the MCP settings as `mcpet` with stdio transport.

Are McDonald's and Luckin tokens required?

Not to try it: the latest source includes shared trial credentials. For steady use enter your own tokens in settings, which take priority.

What does order confirmation do?

The agent shows a summary with every order detail and only after explicit agreement calls `mcpet_confirm_order`. Limits of 100 yuan per order and three orders a day also apply.

What does `delivery_unknown` mean?

It is unknown whether the request reached the service. Do not resubmit it: check the order in the official app first.

What does the pet do without an agent?

It wanders the desktop, changes outfits, shows session progress and usage, and by default reminds about lunch at 11:30 and coffee at 15:00. Settings are changed in the pet menu.

Discussion

No questions or reviews yet.

Desktop pet with a CLI and a skill: an agent keeps sticky notes on the desktop while the console calls the McDonald's MCP service

CLIExtended access142Repository stars

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

CLIBroad access129Repository stars

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

SkillExtended access213Repository 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

README in short

The project pairs a PySide6 desktop pet with an MCP server exposing the same features. The skill describes request routing, and tool schemas sit in `docs/mcp-schemas.json`.

README badge

Report a problem

Foxx AIMcPet
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.