Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Order food on DoorDash — compare real fee-included totals; you approve every order.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
DD_CLI_PATHYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"peckish": {
"command": "npx",
"args": [
"-y",
"peckish-mcp"
],
"env": {
"DD_CLI_PATH": "your-value"
}
}
}
}Run this in your terminal
claude mcp add peckish --env DD_CLI_PATH=your-value -- npx -y peckish-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"peckish": {
"command": "npx",
"args": [
"-y",
"peckish-mcp"
],
"env": {
"DD_CLI_PATH": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"peckish": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"peckish-mcp"
],
"env": {
"DD_CLI_PATH": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
DD_CLI_PATH envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account CydVilla, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.6.0) reached the registry 10 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, LexPact UK Contracts
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Generate UK-law contracts: NDA, service, freelance, recruiter terms of business, IR35.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Feeling peckish? Just ask. An AI ordering agent for DoorDash — it searches, compares real totals (fees included), builds the cart, and *you* approve every order. Built on Claude and DoorDash's official dd-cli.
One tool layer, three surfaces:
| Surface | Start | Best for |
|---|---|---|
| Terminal chat | peckish | Living in the terminal |
| Local web app | peckish-web → http://localhost:4747 | Consumer-friendly UI: store cards, live quote, Stop button, order modal |
| MCP server | claude mcp add peckish -- npx -y peckish-mcp, or the double-click .mcpb | Claude Desktop / Claude Code users — no API key needed; your Claude subscription powers the model |
Which one is for me?
Scripted demo of the web app — store, prices and card are fictional; the interface and the approval gate are the real ones.
[peckish on the web →](https://cydvilla.github.io/peckish/)
Updates: every release ships with full notes, all artifacts, and a SHA256SUMS.txt on Releases — see CHANGELOG.md for the history. Watch the repo (Releases only) to get notified.
Install in one line — no git clone:
npm install -g peckish
Prefer an app? Download the Mac app (.dmg) — guided setup, no terminal at any step. See Mac app below. Everything runs on your own machine either way, because dd-cli holds your DoorDash session there — a Mac (Apple Silicon) or Linux x86_64, including containers and cloud sandboxes: see Linux, containers and headless hosts.
you › Find me a high-protein dinner under $25 that can arrive within 45
minutes. Avoid mushrooms and excessive fees.
⚙ search_restaurants {"query":"grilled chicken bowls","limit":8} ✓ 2.1s ⚙ get_menu {"store_id":"35406455","filter":"chicken"} ✓ 1.8s ⚙ list_carts {"store_id":"35406455"} ✓ 1.2s ⚙ add_items_to_cart {…} ✓ 2.4s ⚙ preview_order {"cart_uuid":"…"} ✓ 3.9s
Best fit: Sharon Korean Kitchen (4.8★, ~24 min) — Grilled Chicken Bulgogi Bowl, $16.95. No mushrooms listed. Total with fees: $21.40 on your Visa ending 1234. Suggested Dasher tip is $3.50 — that, another amount, or none? ~$0.04 turn · $0.04 session
node --version to check; install from nodejs.org or brew.dd-cli --version at startup and turns off only what that build can't do (see dd-cli versions). Download the release from doordash-oss/doordash-cli, verify the SHA256 checksum against the published value, then: # macOS (Apple Silicon)
tar -xzf dd-cli-v*-darwin-arm64.tar.gz && cd dd-cli-v*-darwin-arm64
tar -xzf dd-cli-v*-linux-amd64.tar.gz && cd dd-cli-v*-linux-amd64
bash install.sh # both platforms — installs to ~/.local/bin/dd-cli dd-cli login # sign in to DoorDash in your browser
No browser on that machine (container, VM, cloud sandbox)? See
Linux, containers and headless hosts.
npm install -g peckish
That's it — you now have three commands: peckish (terminal chat), peckish-web (web app), and peckish-mcp (MCP server).
Or install from source (contributors)
git clone https://github.com/CydVilla/peckish.git
cd peckish npm install npm test # optional: 25 unit tests, no network needed npm run dev # terminal chat (or: npm run web / npm run mcp)
export ANTHROPIC_API_KEY=sk-ant-… # from console.anthropic.com
peckish # terminal chat peckish-web # web app → open http://localhost:4747
On boot Peckish verifies your DoorDash sign-in, shows your default delivery address, and flags any open carts you forgot about. If sign-in is missing or expired, Peckish offers to fix it for you: the terminal asks before launching dd-cli login (which opens your browser), the web app shows a sign-in card, and mid-conversation the agent can offer the same assist on any surface — you approve, sign in in the browser, and it picks up where it left off. On a machine with no browser, Peckish skips that offer and tells you how to inject a token instead — see below.
Claude itself becomes the ordering agent, and your Claude subscription pays for the model. Pick whichever fits your client:
Claude Code — one line:
claude mcp add peckish -- npx -y peckish-mcp
Claude Desktop — download peckish-0.2.2.mcpb from Releases and double-click it. Claude Desktop installs it like a browser extension: no terminal, no Node install, no JSON editing.
Or configure Claude Desktop by hand
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": { "peckish": { "command": "npx", "args": ["-y", "peckish-mcp"] } } }
If dd-cli isn't at ~/.local/bin/dd-cli, add "env": { "DD_CLI_PATH": "/your/path/to/dd-cli" } — desktop apps don't inherit your shell PATH.
Peckish is also listed in the MCP Registry as io.github.CydVilla/peckish, so clients that browse the registry can find it directly.
Restart Claude Desktop and ask it to find you dinner. Order confirmation appears as a native dialog; clients that can't render dialogs can browse and build carts but cannot place orders (fail closed).
Things to say:
Placing an order always ends with an explicit confirmation *you* perform — typing yes in the terminal, clicking Place order in the web modal, or approving the dialog in Claude Desktop. Before that, Peckish must show you the itemized quote, confirm the tip, and name the card being charged. Decline anything and it backs off.
Controls & housekeeping
| Where | What |
|---|---|
| Terminal | /prefs saved preferences · /cost session spend · /reset new conversation · /quit · Ctrl+C stops a running turn |
| Web | Stop button cancels a turn · New chat resets · header chip shows session cost · click the address chip to switch your delivery address (editing an address's text happens on doordash.com — Peckish picks it up automatically) |
| Both | Preferences live in ~/.peckish/preferences.json; a full audit log of every tool call and confirmation is written to ~/.peckish/logs/*.jsonl |
Cost: defaults are tuned for low spend at decent quality — claude-sonnet-5 at medium effort, prompt caching on the system prefix and conversation tail, and server-side context editing that prunes stale menu payloads in long sessions. The cost meter shows the approximate spend per turn and per session. Max quality: DD_AGENT_MODEL=claude-opus-4-8 DD_AGENT_EFFORT=high. (On MCP, the client chooses and pays for the model.)
Troubleshooting
| Symptom | Fix |
|---|---|
DoorDash sign-in is missing or expired | Accept the built-in sign-in assist (it runs dd-cli login for you), or run it in a terminal yourself |
| The same, on a headless Linux box | There's no browser to sign in with: dd-cli export-token on a machine that has one, then DD_CLI_ACCESS_TOKEN=… here (details) |
| Auth errors right after upgrading dd-cli | New CLI versions can need fresh scopes — sign in again (assist, dd-cli login, or a fresh export-token) |
Anthropic authentication failed | export ANTHROPIC_API_KEY=… in the same shell, restart |
dd-cli binary not found | Install dd-cli (step 1) or set DD_CLI_PATH=/path/to/dd-cli |
no dd-cli build for your machine | dd-cli ships macOS arm64 and Linux x86_64 only — Intel Macs and Linux arm64 can't run Peckish |
| Web app port in use | PECKISH_PORT=5757 peckish-web |
| A turn ran away | Ctrl+C (terminal) / Stop (web) — history rolls back cleanly |
Env vars: DD_AGENT_MODEL (default claude-sonnet-5), DD_AGENT_EFFORT (low–max, default medium), DD_CLI_PATH, PECKISH_PORT (default 4747), DD_CLI_ACCESS_TOKEN (read by dd-cli itself — browserless sign-in).
A double-clickable app for people who never want to see a terminal: download Peckish-x.y.z-arm64.dmg from Releases, drag Peckish to Applications, and open it.
First launch (Gatekeeper): the app is ad-hoc signed but not notarized (no paid Apple Developer ID), so macOS won't open it on a plain double-click the first time. Right-click the app → "Open" → "Open" (or approve it under System Settings → Privacy & Security). Only needed once.
If macOS instead says "Peckish is damaged and can't be opened", you have
a build from before this was fixed, or the download quarantine got confused.
Clear it once and it opens normally:
`sh
xattr -cr /Applications/Peckish.app
`
First-run setup happens in the app — three buttons, no terminal:
safeStorage (keychain-backed), never in plain text.Then Open Peckish — same web app, same order-confirmation modal, same safety gates; the app is just a shell that ru
Only the beginning is shown; read the rest in the repo