For a project you own, replacing a dozen terminal approvals with tool calls is a real improvement, and the background handling means a dev server does not hang the session. Just read that trade honestly — the README does, in plain terms — and keep it scoped to projects where an unattended script cannot do damage.
A small server that wraps the things a JavaScript project already does. Tests, builds, installs and scripts become tools, which means better error context and no terminal approval prompt on every call.
- run-tests, with the test framework detected and failures reported with context
- build-project, aware of the framework it is building
- install-deps, using npm, yarn or pnpm according to the lock file it finds
- run-script for any npm script, with arguments and a configurable timeout
- list-scripts to see and categorise what the project defines
- project-status for framework detection and a health check on an unfamiliar project
- get-help, which recommends which of the others to reach for
- Background detection by script name — dev, start, serve and watch go to the background; builds, tests and installs do not
Node and npx; nothing to install permanently. Be deliberate about where you point it: the maintainer's own warning is that this lets an assistant run npm scripts without the usual per-command approval, so it should not be left unsupervised.
One command — npx js-mcp
