mcd-mcp-kit CLI
Checks a McDonald's China MCP connection: tool count and names, auth failure responses and why prices come back as zero.
- 121 ★ on the repository
- Last commit
Extended access
Why this level
- The `mcd_mcp.py` client can call tools that create orders and spend points.
- The service access token lives in an environment variable.
Install
- Works in
Manual install
git clone https://github.com/CRFXN5C/mcd-mcp-kit.git && cd mcd-mcp-kit && python doctor.pyThe single install command from the README; requires a token in `MCD_MCP_TOKEN`.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The `mcd_mcp.py` client can call tools that create orders and spend points.
- The service access token lives in an environment variable.
This is third-party code. Review the repository files before installing.
What it does
mcd-mcp-kit is a pair of dependency-free Python scripts for working with the McDonald's China MCP server. `doctor.py` checks the token, the `initialize` handshake, the tool count in `tools/list` and mismatches between documentation and real names. The `--probe-auth` flag shows which codes and bodies the server returns with no token and with a wrong one, and `--json` prints a result for CI. The second script, `mcd_mcp.py`, is a minimal client: `tools` lists tools, `call` invokes one, `demo` runs read-only calls and `raw` prints the handshake headers. The repository also holds `PITFALLS.md` with 13 discovered pitfalls and `TOOLS.md` listing 35 tools.
Who it is for. Developers connecting the McDonald's China MCP to an agent or CI who want to see documentation mismatches in advance.
Good fit when
- A token has been issued and the server is checked before connecting an agent.
- A `calculate-price` call returns zero and the cause is sought in field names.
- An MCP availability check is added to CI through `doctor.py --json`.
- You read how the server answers a missing or wrong token.
Not a fit when
- You need a ready MCP for an agent: these are diagnostic scripts, not a server.
- You automate orders without supervision: the client calls tools that spend money and points.
- You require an official product: the project is independent and unrelated to McDonald's.
Example request
Run `python doctor.py --probe-auth`, show the tool count and documentation mismatches, then call `now-time-info`.Limitations
The author runs the project as a contest entry and is not affiliated with McDonald's. Expected values such as 35 tools are tied to a check on 23 October 2026: update `EXPECTED_TOOLS` in `doctor.py` when the server changes. The token is issued at open.mcd.cn/mcp by phone number, and the README and docs are mostly in Chinese. `mcd_mcp.py call` can also reach seven write operations: orders, cancellation, point redemption, addresses, lottery, coupons and parties.
How to disable. Delete the cloned folder and clear the `MCD_MCP_TOKEN` variable in your shell. Revoke the token in the open.mcd.cn console if needed.
FAQ
What does `doctor.py` check?
The token, the `initialize` handshake, the tool count in `tools/list`, documented names against real ones. The script only reads and creates no orders.
How do I check the auth failure responses?
Run `python doctor.py --probe-auth`. Per the README the server answers `403` with JSON when there is no token and `401` with plain text for a wrong one.
Why does price calculation return zero yuan?
Most often a wrong field name was passed, such as `code` instead of `productCode`, and no error appears. Prices in responses are in fen, so 5900 means 59 yuan.
How many tools does the server have?
`TOOLS.md` lists 35: 28 are read-only and 7 change data and spend money or points. `doctor.py` calls none of those seven.
How do I embed the check in CI?
Use `python doctor.py --json`: the `ok` field gives the result. Exit code `2` means a problem.
Discussion
No questions or reviews yet.
Related
CLI toolsCommand-line inspector for HTTP MCP servers: lists tools, schemas, prompts and resources and calls any tool by hand.
A command-line debugger for MCP servers from Giant Swarm: a REPL for tools, OAuth 2.1 and an MCP server mode for Cursor
A transparent proxy between an AI client and an MCP server: shows every JSON-RPC frame in the terminal, checks a capture in CI and exports spans
A teaching MCP server in Python: Hacker News search, GitHub repository details and examples of model sampling requests
A local tool to test and debug MCP servers: chat with tools, inspect calls and run evals across clients
A lightweight CLI to discover, inspect and call MCP server tools straight from the shell
README in short
Mismatches between documentation and server are collected in 13 items with a cause, the right action and a way to reproduce.