Plenty of servers will run a shell command for a model; the interesting part here is that each one surfaces as a growl notification carrying the command text and the working directory, so you see what is about to happen rather than reading it in a log afterwards. That makes it usable on a machine you actually care about, at the cost of a prompt every time.
A stdio server that lets a model run shell commands on your machine, but puts a permission dialog in front of every one of them. The notification shows the command and the working directory it will run in, so approving is a decision rather than a reflex.
- `execute-command` runs a shell command after you approve it in the notification
- `system-info` returns OS, uptime, memory, disk and CPU
- Each permission dialog names the command and the directory it will run in
- Timeout limits stop a runaway process, and input is sanitised against command injection
Build it from the repository: `npm install` then `npm run build` (package `perm-shell-mcp`, version 0.1.0). Point your client at `node` with the path to `dist/index.js`. No account and no key — but it runs commands as you, on your machine, so the notification is the only thing between the model and your shell.
