You ran the documented command to start the MCP Inspector, and npm answered with a shrug. This hit anyone whose npx resolved to version 2.10.0 while it was the latest tag, up to 8 October 2026. If that was you: no panic, your config is fine.
The MCP Inspector is a visual testing tool for MCP servers, published on npm as @modelcontextprotocol/inspector. npx is the npm command that downloads a package and runs one of its executables, which npm calls bin entries.
Why does npx print “npm error could not determine executable to run”?
npx -y @modelcontextprotocol/inspector@latest
npm error could not determine executable to run
The error means npx could not pick a single bin entry to start. Inspector 2.10.0 added a second bin, mcpdo, beside the existing mcp-inspector. According to the issue write-up, the choice is made by getBinFromManifest in npm’s libnpmexec, which works in this order:
- If every bin points at the same file, run it. That was true up to 2.9.0, when only
mcp-inspectorexisted. - Otherwise, run the bin named after the package’s unscoped name, here
inspector. - Otherwise, fail with “could not determine executable to run”.
Inspector 2.10.0 had two bins pointing at different files and no bin called inspector, so rule 3 applied.
The release checks started the installed bin by name (mcp-inspector), so nothing exercised npx’s own default-bin resolution. The bug shipped with green CI.
How do you fix npx @modelcontextprotocol/inspector?
Upstream fixed it in PR #2652, merged on 8 October 2026, by adding an inspector bin alias that points at the launcher. In the meantime the maintainers moved latest back to 2.9.0 and deprecated 2.10.0. Version 2.10.1 carries the fix, and the npm registry lists it as latest.
If npx still resolves to the broken version (an old cache, or a pin), name the bin yourself:
npx -y -p @modelcontextprotocol/inspector@2.10.1 mcp-inspector
The -p flag says which package to install, and the last word says which executable to run, so npx stops guessing. On 2.10.0 itself the same trick works, as the issue’s own workaround shows:
npx -y -p @modelcontextprotocol/inspector@2.10.0 mcp-inspector
Prefer 2.10.1: the default command works again, so your docs and scripts keep working as written. The new mcpdo tool stays reachable with npx -p @modelcontextprotocol/inspector mcpdo.
What to learn from the npx default-bin bug
A package that ships several distinct bins can only be started by plain npx if one of them is named after the package. Adding a second command to a package therefore quietly changes how npx picks the default one. If you maintain a CLI package, test it through npm exec, not just by bin name. If you only use it, upgrade and carry on debugging your MCP server :)
References
Stay Ahead in AI, Machine Learning & Python
No hype. Weekly notes on AI tools, Python, and what I'm actually building — plus seven free gifts, including Vibe Coding Checklist and AI Coding Assistant Safety Card.
You're in
Check your inbox for Set a password to unlock articles if you want gated tutorials. Log in with the same email.